我想查看字符串值是否包含字母/ s [a-zA-Z]
示例:
var str = '123z56';
答案 0 :(得分:99)
不需要jQuery
if (str.match(/[a-z]/i)) {
// alphabet letters found
}
答案 1 :(得分:40)
您可以使用正则表达式:
/[a-z]/i.test(str);
i
使正则表达式不区分大小写。你也可以这样做:
/[a-z]/.test(str.toLowerCase());
答案 2 :(得分:9)
if (/[a-zA-Z]/.test(num)) {
alert('Letter Found')
}
答案 3 :(得分:4)
不需要jquery:
var matchedPosition = str.search(/[a-z]/i);
if(matchedPosition != -1) {
alert('found');
}
答案 4 :(得分:2)
令我惊讶的是,当他们都没有真正回答问题时,这里的答案获得了如此多的赞誉。这是确保给定字符串中仅包含拉丁字符的方法。
const hasOnlyLetters = !!value.match(/^[a-z]*$/i);
!!
可以将非布尔值转换为布尔值。 (这与两次应用!
完全相同,实际上,您可以多次使用!
来切换真实性。)
关于RegEx,这是细分。
/.../i
分隔符是/
,而i
意味着以不区分大小写的方式评估语句。^...$
^
的意思是看一看字符串的开头。 $
表示查看字符串的末尾,并且一起使用时,表示考虑整个字符串。您可以在这些边界之外为RegEx添加更多功能,例如添加/添加所需的后缀或前缀。[a-z]*
,该部分表示查找所有小写字母。 (不区分大小写的修饰符意味着我们也不必查看大写字母。)末尾的*
表示我们应该多次匹配括号中的内容。这样,“ abc”将匹配,而不仅仅是“ a”或“ b”,依此类推。答案 5 :(得分:1)
所有这些答案都是正确的,但是我还必须检查字符串是否包含其他字符和希伯来字母,所以我只使用了以下内容:
if (!str.match(/^[\d]+$/)) {
//contains other characters as well
}