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

时间:2014-10-17 13:14:18

标签: javascript regex

所以我第一次尝试了一些非常基本的RegEx,并且我被告知有几种说明字符串开头和结尾的方法。

一种方式是'\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!'); 
}

2 个答案:

答案 0 :(得分:4)

我想有人告诉你\A\Z应该工作的人被误导了。根据{{​​3}},只有^$才有效。

答案 1 :(得分:1)

使用正则表达式可视化工具进行一些游戏,例如Debuggex。当{em> PCRE 或 Python 被选为正则表达式风格(在下拉列表中)时,它显示your expression matches,但在使用时不匹配 Javascript 风味。

简而言之,Javascript只是doesn't support \A and \Z