我有这个Reg Ex
\b\d{7}PM\w{2}\d*\b
所以基于注册表它应该只接受
7个数字+ PM + 2个字母数字+任意长度的数字。所以这将分别接受这样的,因为它在开头和结尾都有\ b
1032213PM39849723
我的问题是为什么上面的正则表达式接受
1032213PM39849723<\test>
或
1032213PM39849723.
或
>1032213PM39849723
而不是
A1032213PM39849723
或
1032213PM39849723K
这真的让我感到困惑,为什么会发生这种情况,如果在正则表达式中有任何更改,以便在结尾或开头不接受任何其他字符请告诉我。
答案 0 :(得分:3)
这取决于你使用的正则表达式函数的风格,但通常这个正则表达式并不意味着整个字符串必须包含这个而只有这个,它只是意味着某些部分字符串必须匹配此。如果要匹配整个字符串,请添加开始和结束锚点:
^\d{7}PM\w{2}\d*$