我正在尝试编写与以digit_结尾的字符串不匹配的正则表达式
例如
abc0_@stack.com should return false
我写的正则表达式为'^[a-z0-9\.\+_-]*[0-9_]+@stack.com
我该如何修改此正则表达式,以便所有“ digit_”都不匹配并返回false。
以下测试用例是我要匹配的。
abc@stack.com Valid
abc123@stack.com Valid
abc9_@stack.com Invalid
abc09@gmail.com Invalid
答案 0 :(得分:1)
您可以根据当前的正则表达式使用否定的超前查询:
^(?![a-z0-9\.\+_-]*\d_@)
这断言[a-z0-9\.\+_-]
组中没有一些(或没有)字符,后跟一个数字(\d
),一个_
和一个@
字符串的开头。