正则表达式执行过程中遇到的问题
Issue faced during the implementation of the regex expression
场景:
我试过的正则表达式不应该允许包含'@'字符的表达式。我已经成功地实施了它。但是,它应该包含“。”两个字符之间必须有点符号。
面临的问题:
此正则表达式允许不带“.”的字符点符号。
这是正则表达式:
^([a-z0-9]*([.])*([a-z0-9]))+(?!@)(?!gmail.com)+$
要求的结果:
1.上面的正则表达式应该允许以下表达式:
一个。 john.mayor
b。 michael.clarke
c。 jitendra123.gurung
等等。
2。但它不应该允许以下表达式:
一个。约翰
b。 jitendra@
c。约翰@gmail.com
等等。
我在上面尝试过的正则表达式中需要什么修正才能达到预期的结果?
非常感谢您的建议。
您可以使用您指定的字符 class [a-z0-9]+
并使用 +
匹配该字符一次或多次,以确保至少有一个 [a-z0-9]
点前后。
我找到了@Onyambu 和@Theforthbird 建议的两个最相关的答案,我已在下面发布:
^\w+[.]\w+$
根据@Onyambu
的建议
^(?!.*@)[a-z0-9]+\.[a-z0-9]+$
根据@Theforthbird
的建议
两者都符合我要求的验证。让我知道哪个更好。
场景:
我试过的正则表达式不应该允许包含'@'字符的表达式。我已经成功地实施了它。但是,它应该包含“。”两个字符之间必须有点符号。
面临的问题:
此正则表达式允许不带“.”的字符点符号。
这是正则表达式:
^([a-z0-9]*([.])*([a-z0-9]))+(?!@)(?!gmail.com)+$
要求的结果:
1.上面的正则表达式应该允许以下表达式:
一个。 john.mayor
b。 michael.clarke
c。 jitendra123.gurung
等等。
2。但它不应该允许以下表达式:
一个。约翰
b。 jitendra@
c。约翰@gmail.com
等等。
我在上面尝试过的正则表达式中需要什么修正才能达到预期的结果?
非常感谢您的建议。
您可以使用您指定的字符 class [a-z0-9]+
并使用 +
匹配该字符一次或多次,以确保至少有一个 [a-z0-9]
点前后。
我找到了@Onyambu 和@Theforthbird 建议的两个最相关的答案,我已在下面发布:
^\w+[.]\w+$
根据@Onyambu 的建议
^(?!.*@)[a-z0-9]+\.[a-z0-9]+$
根据@Theforthbird 的建议
两者都符合我要求的验证。让我知道哪个更好。