Javascript RegEx - 字符串异常的开始和结束

Javascript RegEx - Start and End of String Anomalies

本文关键字:开始 结束 异常 RegEx 字符串 Javascript      更新时间:2023-09-26

所以我第一次尝试一些非常基本的正则表达式,有人告诉我有几种方法可以说明字符串的开头和结尾。

一种方式是"'A"和"'Z",另一种方式是"^"和"$"。

出于某种原因,在 JS 中运行它时,后者是唯一实际有效的选项。

有谁知道为什么会这样吗?

var str = "123456",
    pattern1 = new RegExp("^''d{6}$"),
    pattern2 = new RegExp("'A''d{6}'Z");
if(pattern1.test(str)){
    alert('pattern 1 match!'); 
}else{
    alert('pattern 1 no match!'); 
}
if(pattern2.test(str)){
    alert('pattern 2 match!'); 
}else{
    alert('pattern 2 no match!'); 
}

我认为谁告诉你'A'Z应该工作是错误的。根据 JavaScript 正则表达式文档,只有 ^$ 应该工作。

玩一下正则表达式可视化工具,如 Debuggex。它显示当选择PCREPython作为正则表达式风格(在下拉列表中(时,您的表达式匹配,但在使用Javascript风格时不匹配。

简而言之,Javascript根本不支持'A'Z