情境:
我在https://www.regextester.com/中测试了以下正则表达式,并根据需要执行验证。这意味着它不允许包含' @'字符。
问题面对:
但是,当我在HTML中实现表单验证的相同正则表达式时,它无法验证。这意味着它还允许包含' @'的表达式字符,这不是必需的结果。
这是正则表达式:
^[a-z0-9]+\.([a-z0-9])+(?!@)+(?!outlook.com)+(?!gmail.com)+$
在HTML表单中实现:
<td>
<input type="text" name="exchange_usertoadd" required="required"
pattern="^[a-z0-9]+\.([a-z0-9])+(?!@)+(?!outlook.com.np)+(?!gmail.com)+$"
placeholder="Enter Exchange Username" value="" size="30">
</td>
必修结果:
1。上面的正则表达式应该允许以下表达式:
一个。 john.mayor
湾michael.clarke
℃。 jitendra123.gurung
等等。
2。但它不应该允许以下表达式:
一个。 john.mayor@gmail.com
湾jitendra.gurung @
℃。萨拉德@
d。 michael.clarke@outlook.com
等等。
我在上面尝试的正则表达式的实现中需要进行哪些更正?
非常感谢您的建议。
答案 0 :(得分:1)
答案 1 :(得分:0)
也许我过于宽松地阅读您的要求,但是如何在正则表达式中使用^[^@]+$
呢?它匹配您给出的所有测试用例。
答案 2 :(得分:0)
我修改了表达式,它符合验证所需的要求。
这是符合我要求的正确工作表达式:
^([a-z0-9]*([.])*([a-z0-9]))+(?!@)(?!outlook.com.np)(?!gmail.com)+$