跳到主要内容

JavaScript程序检查字符串是否以特定字符开始和结束

要理解这个示例,你应该具备以下 JavaScript 编程 主题的知识:

示例 1:使用内置方法检查字符串

// 程序检查字符串是否以 'S' 开始并以 'G' 结束

function checkString(str) {
// 检查字符串是否以 S 开头并以 G 结束
if (str.startsWith("S") && str.endsWith("G")) {
console.log("字符串以 S 开始并以 G 结束");
} else if (str.startsWith("S")) {
console.log("字符串以 S 开始但不以 G 结束");
} else if (str.endsWith("G")) {
console.log("字符串不以 S 开头但以 G 结束");
} else {
console.log("字符串不以 S 开头也不以 G 结束");
}
}

// 获取输入
let string = prompt("输入一个字符串:");
checkString(string);

输出

输入一个字符串:String
字符串以 S 开始但不以 G 结束

在上述程序中,使用了两个方法 startsWith()endsWith()

  • startsWith() 方法检查字符串是否以特定字符串开始。
  • endsWith() 方法检查字符串是否以特定字符串结束。

上述程序没有检查小写字母。因此,这里的 Gg 是不同的。

您还可以检查字符是否以 Ss 开始并以 Gg 结束。

str.startsWith("S") ||
(str.startsWith("s") && str.endsWith("G")) ||
str.endsWith("g");

示例 2:使用正则表达式检查字符串

// 程序检查字符串是否以 'S' 开始并以 'G' 结束

function checkString(str) {
// 检查字符串是否以 S 开头并以 G 结束
if (/^S/i.test(str) && /G$/i.test(str)) {
console.log("字符串以 S 开始并以 G 结束");
} else if (/^S/i.test(str)) {
console.log("字符串以 S 开始但不以 G 结束");
} else if (/G$/i.test(str)) {
console.log("字符串不以 S 开头但以 G 结束");
} else {
console.log("字符串不以 S 开头也不以 G 结束");
}
}

// for 循环显示不同场景
for (let i = 0; i < 3; i++) {
// 获取输入
const string = prompt("输入一个字符串:");

checkString(string);
}

输出

输入一个字符串:String
字符串以 S 开始并以 G 结束
输入一个字符串:string
字符串以 S 开始并以 G 结束
输入一个字符串:JavaScript
字符串不以 S 开始也不以 G 结束

在上述程序中,使用了正则表达式(RegEx)和 test() 方法来检查字符串是否以 S 开始并以 G 结束。

  • /^S/i 模式检查字符串是否为 Ss。这里的 i 表示字符串不区分大小写。因此,Ss 被视为相同。
  • /G$/i 模式检查字符串是否为 Gg
  • 使用 if...else...if 语句检查条件并相应地显示结果。
  • for 循环用于获取用户的不同输入以显示不同的案例。