Javascript 有人能解释这两个正则表达式之间的区别吗?
vsJavascript 有人能解释这两个正则表达式之间的区别吗?,javascript,regex,Javascript,Regex,vs 在案例1中,^表示输入的开始。案例二否定了这个术语 案例1:从开始(^)到结束($)匹配a-zA-Z0或更多(+)次 案例2:将所有未(^)结束($)的字符与a-zA-Z(++)字符匹配,表达式开头的^表示“锚定在字符串开头” 字符类[]表达式中的^表示否定 因此,/^[a-zA-Z]$/匹配完全由大写字母和小写字母组成的字符串,而/[^a-zA-Z]$/匹配“不由字母组成的字符串结尾”(例如,字符串末尾的数字) /^[a-zA-Z]+$/ 表示字符串应 ^:从 [a-zA-Z]:小写或大
在案例1中,
^
表示输入的开始。案例二否定了这个术语
案例1:从开始(^
)到结束($
)匹配a-zA-Z
0或更多(+
)次
案例2:将所有未(
^
)结束($
)的字符与a-zA-Z(++
)字符匹配,表达式开头的^
表示“锚定在字符串开头”
字符类[]
表达式中的^
表示否定
因此,/^[a-zA-Z]$/
匹配完全由大写字母和小写字母组成的字符串,而/[^a-zA-Z]$/
匹配“不由字母组成的字符串结尾”(例如,字符串末尾的数字)
/^[a-zA-Z]+$/
表示字符串应
^
:从
[a-zA-Z]
:小写或大写字母字符
+
:至少一个前一个字符,在本例中至少一个字母字符
$
:应以大写或小写字母字符结尾
Exmaple:
仅限大小写和数字空格
/[^a-zA-Z]+$/
[^a-zA-Z]
:不是大写或小写字符
+
:至少有一个上一个字符,在本例中,至少有一个大写或小写字母字符,但不
$
:应以none
大写或小写字母字符结尾
示例:
123456789
任何东西12345你都可以自己发现:vs.你可以在谷歌上搜索像这样的“正则表达式测试器(),以帮助查看你的正则表达式匹配什么。/^[a-zA-Z]+$/.test('AbRcD');控制台-->true/[^a-zA-Z]+$/.test('Abf3498');控制台-->true@user3475797是的,这是正确的,因为我们没有指定第二个表达式与第一个表达式不同的启动方式
/^[a-zA-Z]+$/
/[^a-zA-Z]+$/
this is a string -- matches neither
(contains non alphabetic, but doesn't end in it)
this is a number: 123 -- second expression matches ': 123'
(string ends in non-alphabetic characters)
this -- first expression matches 'this'
(string contains only alphabetic characters)