所以我试了这个:
if (/^[a-zA-Z]/.test(word)) { // code }
它不接受以下情况:" "但它确实接受了这一点:"word word",其中包含一个空格:/有什么好办法吗?
" "
"word word"
xjreopfe1#
使用/^[a-zA-Z]/时,只检查第一个字符:
/^[a-zA-Z]/
^
[a-zA-Z]
a-z
A-Z
如果要检查是否所有字符都是字母,请使用以下命令:
/^[a-zA-Z]+$/.test(str);
+
$
或者,使用不区分大小写的标志i,可以将其简化为
i
/^[a-z]+$/i.test(str);
或者,由于只需要test,而不需要match,因此可以检查相反的情况,然后求反:
test
match
!/[^a-z]/i.test(str);
zwghvu4y2#
最快的方法是检查是否存在非字母:
if (!/[^a-zA-Z]/.test(word))
l0oc07j23#
你需要
/^[a-zA-Z]+$/
当前,您正在匹配输入开始处的单个字符。如果您的目标是从头到尾匹配字母字符(一个或多个),则需要重复a-z字符匹配(使用+),并指定要一直匹配到结尾(通过$)
pbgvytdp4#
试试这个
var Regex='/^[^a-zA-Z]*$/'; if(Regex.test(word)) { //... }
我想这对你会有用的。
kiz8lqtg5#
尝试在模式中添加**\S**^[阿-扎-z]\S*$
5条答案
按热度按时间xjreopfe1#
使用
/^[a-zA-Z]/
时,只检查第一个字符:^
:Assert字符串开头的位置[a-zA-Z]
:匹配下表中的单个字符:a-z
:“a”和“z”之间的字符A-Z
:“A”和“Z”之间的字符如果要检查是否所有字符都是字母,请使用以下命令:
^
:Assert字符串开头的位置[a-zA-Z]
:匹配下表中的单个字符:+
:介于一次和无限次之间,尽可能多,根据需要回馈(贪婪)a-z
:“a”和“z”之间的字符A-Z
:“A”和“Z”之间的字符$
:Assert字符串末尾的位置(或字符串末尾的换行符之前,如果有的话)或者,使用不区分大小写的标志
i
,可以将其简化为或者,由于只需要
test
,而不需要match
,因此可以检查相反的情况,然后求反:zwghvu4y2#
最快的方法是检查是否存在非字母:
l0oc07j23#
你需要
当前,您正在匹配输入开始处的单个字符。如果您的目标是从头到尾匹配字母字符(一个或多个),则需要重复a-z字符匹配(使用
+
),并指定要一直匹配到结尾(通过$
)pbgvytdp4#
试试这个
我想这对你会有用的。
kiz8lqtg5#
尝试在模式中添加**\S**
^[阿-扎-z]\S*$