我要求正则表达式在小数点后正好匹配3或2个字符,以便它验证www.xyz.com而不是xyz.Complete
答案 0 :(得分:2)
我认为你想要的是\b
我无法想到使用单词边界断言\b
无法合理涵盖的案例。任何其他答案在最后只需要\b
(如果它总是{{1}然后你使用.com
这意味着一个字面点(.com\b
)字符后跟.
,其中后面的内容不是字母,数字或下划线。它是零宽度断言,这意味着它不会捕获任何内容。要允许com
或.net
,您还可以使用.edu
使用正则表达式的大多数工具和语言都支持\.(com|edu|net)\b
断言,但如果您需要更精确(例如,您可能希望在\b
之后允许使用下划线),那么您的工具或语言编译器可能支持“前瞻”,这也是零宽度断言。 (在上面提到的例子中,你会使用类似com
的东西来禁止数字和大写或小写字母)
答案 1 :(得分:1)
严格回答你的问题
小数点后正好匹配3或2个字符
仅匹配结尾:
\.[A-Za-z]{2,3}$
\
转义.
,否则表示“任何字符”
答案 2 :(得分:1)
您忘记了字符串开始和结束检查(^
,$
)。使用此:
^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$