在 JS 中检查字符串中的字母是大写还是小写

目录

Check if letter in String is Uppercase or Lowercase in JS

  1. 检查字符串中的字母是大写还是小写
  2. 使用 RegExp.test() 检查字符串中的字母是大写还是小写
  3. 在 JavaScript 中检查字符串的第一个字母是否为大写
  4. 将字符串的第一个字母大写

检查字符串中的字母是大写还是小写

检查字符串中的字母是大写还是小写:

  1. 使用toUpperCase()方法将字母转换为大写。
  2. 将字母与自身进行比较。
  3. 如果比较返回true,则该字母为大写,否则为小写。
索引.js
const letter = 'A'; // ✅ Check if a letter is uppercase if (letter.toUpperCase() === letter) { // 👇️ this runs console.log('✅ letter is uppercase'); } else { console.log('⛔️ letter is lowercase'); } // --------------------------------------- // ✅ Check if a letter is lowercase const letter2 = 'b'; if (letter2.toLowerCase() === letter2) { // 👇️ this runs console.log('The letter is lowercase'); } else { console.log('The letter is uppercase'); }

我们使用
String.toUpperCase
方法将字符转换为大写,以便进行比较。

如果将字母的大写变体与字母本身进行比较返回
true,则该字母为大写。

索引.js
const char = 'B'; console.log(char.toUpperCase()); // 👉️ 'B' console.log(char === char.toUpperCase()); // 👉️ true

否则,该字母为小写。

索引.js
const char = 'b'; console.log(char.toUpperCase()); // 👉️ 'B' console.log(char === char.toUpperCase()); // 👉️ false

您还可以通过访问索引处的字符串来访问字符串中的特定字母。

索引.js
const str = 'aBc'; const letter = str[1]; console.log(letter); // 👉️ 'B' if (letter.toUpperCase() === letter) { // 👇️ this runs console.log('✅ letter is uppercase'); } else { console.log('⛔️ letter is lowercase'); }
JavaScript 索引是从零开始的,因此字符串中的第一个字符的索引为0,最后一个字符的索引为 str.length - 1

如果您必须经常检查字母是大写还是小写,请定义一个可重用的函数。

索引.js
function isUpperCase(string) { return string.toUpperCase() === string; } console.log(isUpperCase('ABC')); // 👉️ true console.log(isUpperCase('A')); // 👉️ true console.log(isUpperCase('b')); // 👉️ false console.log(isUpperCase('Ab')); // 👉️ false

isUpperCase()函数接受一个字符串或单个字母,
true如果字母是大写则返回,false否则返回。

可以使用相同的方法来定义函数isLowerCase

索引.js
function isLowerCase(string) { return string.toLowerCase() === string; } console.log(isLowerCase('ABC')); // 👉️ false console.log(isLowerCase('A')); // 👉️ false console.log(isLowerCase('b')); // 👉️ true console.log(isLowerCase('Ab')); // 👉️ false

isLowerCase()函数将字符串或单个字母作为参数,true如果字符串是小写则返回,false否则返回。

处理数字和标点符号

但是,这种方法不适用于数字或标点符号,因为它们不能是大写或小写。

索引.js
const letter = '?'; if (letter.toUpperCase() === letter) { // 👉️ this runs... console.log('✅ letter is uppercase'); } else { console.log('⛔️ letter is lowercase'); }

要解决这个问题,我们必须检查字母是否有大写和小写变体。

索引.js
const letter = '?'; if (letter.toUpperCase() === letter && letter !== letter.toLowerCase()) { console.log('✅ letter is uppercase'); } else { // 👉️ this runs console.log('⛔️ letter is lowercase'); }

我们的声明中有两个条件if

  1. 检查字母的大写变体是否等于字母。
  2. 检查字母是否不等于其小写变体。

如果满足这两个条件,则字母为大写。

我们检查字母是否有大写和小写变体,因为数字和标点符号没有。
索引.js
const str = '4'; // 👇️️ true console.log(str.toLowerCase() === str.toUpperCase());

如果我们知道这个字母是大写的并且它不等于它的小写变体,那么我们就有一个大写字母。

否则,我们有小写字母、数字或标点符号。

如果您必须经常这样做,请定义可重用的函数。

索引.js
function isUpperCase(letter) { if (letter.toUpperCase() === letter && letter !== letter.toLowerCase()) { console.log('✅ letter is uppercase'); return true; } console.log('⛔️ letter is lowercase'); return false; } const str = 'BObby'; console.log(isUpperCase(str[0])); // 👉️ true console.log(isUpperCase(str[1])); // 👉️ true console.log(isUpperCase(str[2])); // 👉️ false console.log(isUpperCase(str)); // 👉️ false

该函数接受一个字母,如果该字母是大写则isUpperCase返回,否则返回。truefalse

您也可以将整个字符串传递给函数isUpperCase,它不必是单个字母。

可以使用相同的方法来检查字母(或字符串)是否为小写。

索引.js
function isLowerCase(letter) { if (letter.toLowerCase() === letter && letter !== letter.toUpperCase()) { return true; } return false; } const str = 'BObby'; console.log(isLowerCase(str[0])); // 👉️ false console.log(isLowerCase(str[1])); // 👉️ false console.log(isLowerCase(str[2])); // 👉️ true console.log(isLowerCase(str)); // 👉️ false

isLowerCase()函数将字符串作为参数,true如果字符串是小写则返回,false否则返回。

使用 RegExp.test() 检查字符串中的字母是大写还是小写

或者,您可以使用该RegExp.test()方法。

如果字母是大写字母,则test()方法将返回,如果字母是小写字母。truefalse

索引.js
function isUpperCase(string) { return /^[A-Z]+$/.test(string); } console.log(isUpperCase('')); // 👉️ false console.log(isUpperCase('A')); // 👉️ true console.log(isUpperCase('b')); // 👉️ false console.log(isUpperCase('Ab')); // 👉️ false console.log(isUpperCase('ABC')); // 👉️ true

如果你想检查一个字母是否是小写的,你只需要将
A-Z范围内的字母小写。

索引.js
function isLowerCase(string) { return /^[a-z]+$/.test(string); } console.log(isLowerCase('')); // 👉️ false console.log(isLowerCase('A')); // 👉️ false console.log(isLowerCase('b')); // 👉️ true console.log(isLowerCase('Ab')); // 👉️ false console.log(isLowerCase('ABC')); // 👉️ false

请注意,此方法仅适用于 ASCII 字母。如果您必须处理所有字母,请使用上一个副标题中的方法。

RegExp.test

方法检查正则表达式是否在字符串中匹配,如果匹配则返回,
否则true返回false

正斜杠标记/ /正则表达式的开始和结束。

插入^符号匹配输入的开头,美元符号
$匹配输入的结尾。

方括号之间的部分[]称为字符类,匹配范围内的大写或小写字母。

加号+与前面的项目(字母范围)匹配 1 次或多次。

如前所述,此方法仅适用于 ASCII 字母 (AZ)。

在 JavaScript 中检查字符串的第一个字母是否为大写

检查字符串的第一个字母是否大写:

  1. 使用该String.charAt()方法获取字符串的第一个字母。
  2. 使用String.toUppercase()方法将字母转换为大写。
  3. 将结果与字母进行比较。
索引.js
function firstIsUppercase(str) { if (str.length === 0) { return false; } return str.charAt(0).toUpperCase() === str.charAt(0); } console.log(firstIsUppercase('Hello')); // 👉️ true console.log(firstIsUppercase('world')); // 👉️ false console.log(firstIsUppercase('')); // 👉️ false if (firstIsUppercase('Hello')) { console.log('✅ First letter is uppercase'); } else { console.log('⛔️ First letter is NOT uppercase'); }

我们首先
检查提供的字符串是否为空如果是,函数返回false

String.charAt方法返回指定索引处的字符,如果索引不存在,则返回空字符串

我们使用
String.toUpperCase
方法将字符串的首字母转换为大写,并将其与自身进行比较。

JavaScript 索引在 JavaScript 中是从零开始的,因此字符串中的第一个字符的索引为0,最后一个字符的索引为 str.length - 1

如果将首字母的大写变体与字母本身进行比较返回true,则首字母为大写。

索引.js
const str = 'Hello'; console.log(str[0].toUpperCase()); // 👉️ H console.log(str[0].toUpperCase() === str[0]); // 👉️ true

否则,第一个字母是小写的。

索引.js
const str = 'hi'; console.log(str[0].toUpperCase()); // 👉️ H console.log(str[0].toUpperCase() === str[0]); // 👉️ false

字符串首字母大写

将字符串的第一个字母大写:

  1. 使用该String.charAt方法获取字符串的第一个字母。
  2. 使用String.toUpperCase()方法将字母转换为大写。
  3. 使用该slice()方法将字符串的其余部分附加到结果。
索引.js
function capitalizeFirst(str) { return str.charAt(0).toUpperCase() + str.slice(1); } console.log(capitalizeFirst('apple')); // 👉️ Apple console.log(capitalizeFirst('one two')); // 👉️ One two console.log(capitalizeFirst('')); // 👉️ ''

我们使用方法String.charAt()获取字符串的首字母并将其转换为大写。

最后一步是使用该String.slice()方法将字符串的其余部分附加到字母上。

索引.js
console.log('apple'.slice(1)); // 👉️ pple console.log('hello'.slice(1)); // 👉️ ello

String.slice方法提取字符串一部分并将其返回,而不修改原始字符串。

String.slice()方法采用以下参数:

姓名 描述
起始索引 要包含在返回的子字符串中的第一个字符的索引
结束索引 要从返回的子字符串中排除的第一个字符的索引
当只有一个参数传递给该String.slice() 方法时,切片会到达字符串的末尾。

加法 (+) 运算符可用于连接两个或多个字符串。

使用 RegExp.test() 检查字符串的第一个字母是否为大写

您还可以使用该RegExp.test方法来检查字符串的第一个字母是否为大写。

如果首字母为大写,则
test()方法将返回,否则返回。truefalse

索引.js
function firstIsUppercase(str) { return /[A-Z]/.test(str.charAt(0)); } console.log(firstIsUppercase('Hello')); // 👉️ true console.log(firstIsUppercase('world')); // 👉️ false console.log(firstIsUppercase('')); // 👉️ false

RegExp.test

方法匹配字符串中的正则表达式

如果正则表达式在字符串中匹配,则该方法返回true,否则
false返回 。

正斜杠标记/ /正则表达式的开始和结束。

方括号称为字符类,匹配从到 的[]一系列大写字母AZ

我们在方法调用中访问了字符串的第一个字符test()

您可以调整正则表达式以检查字符串是否以一个或多个大写字母开头。

索引.js
function startsWithUppercase(str) { return /^[A-Z]/.test(str); } console.log(startsWithUppercase('Hello')); // 👉️ true console.log(startsWithUppercase('HELLO world')); // 👉️ true console.log(startsWithUppercase('world')); // 👉️ false console.log(startsWithUppercase('')); // 👉️ false

插入符^匹配输入的开头。

请注意,我们将整个字符串传递给了该RegExp.test()方法。

总的来说,正则表达式检查提供的字符串是否以一个或多个大写字母开头。

额外资源

您可以通过查看以下教程来了解有关相关主题的更多信息: