我正在为一个项目过滤掉 SSN#。产品的 SSN 的默认表达式是
(^|\b)(?!9|8|77[3-9]|666|000)(\d{3})( - | |-)(?!00)(\d{2})\3(?!0000)(\d{4})(\b|$)
过去他们使用正则表达式对自定义脚本进行了修改:
(^|\b)(?!9|8|77[3-9]|666|000)(\d{3})( - | |-)(?!00)(\d{2})\3(?!0000)(\d{4})($|[^\d-])
两种表达方式的区别是
(\b|$)
\b: backspace
$:end of string
和
($|[^\d-])
$:end of string
[^]: Not in position
\d-: not match 0-9
我想这对我来说没有意义。为什么做出改变?这两种表达方式的结尾似乎都是多余的。非常感激任何的帮助。谢谢!!