我有这个主机名正则表达式,我想稍微扩展一下。它将匹配主机名,例如:
yahoo.com
mail.yahoo.com
但也会匹配
&安培; ^%yahoo.com 等...
(\w+\.\w+\.\w+)
有人可以告诉我我需要添加什么只允许字母,数字和句号吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
尝试使用
[a-zA-Z0-9\.]+
代替\w+
。
总而言之,这将是:
([a-zA-Z0-9\.]+\.[a-zA-Z0-9\.]+\.[a-zA-Z0-9\.]+)
答案 2 :(得分:0)
\w
不应与&^%
匹配。我认为你缺少锚点。
尝试\b
,匹配字边界。
\b\w+\.\w+\.\w+\b
但希望您知道这个正则表达式非常简化?已经有一些问题和答案,例如, 1141848/regex-to-match-url