我需要使用正则表达式从url域中提取一个值,该域将排除除主机(例如:wordpress)和域类型(例如.com)之外的所有内容。网址是动态的,每个结果包含2-3个值(www.example.com或example.org)。我试图使用这个表达式,但我只回到我试图排除的每个项目的第一个字母:
Expresssion
(?!wordpress|com|www)(\w+|\d+)
字符串
example.wordpress.com
结果
例如
非常感谢任何帮助
答案 0 :(得分:3)
锚定你的正则表达式:
\b(?!wordpress|com|www)(\w+|\d+)\b
您可能还想考虑(\w+|\d+)
是否真的是您的意思。 \w
已包含数字。此外,URL中还允许使用其他字符,例如-
。你需要处理这个吗?
答案 1 :(得分:0)
如果我要这样做,我会利用url的格式:任何(点)第二级域(点)第一级域:
^(?<level3>.*)[.]?(?<level2>.+)[.](?<level1>.+)$
答案 2 :(得分:0)
是否仅仅是在域名之后?
(/\/(?!\/).*?\/(.*)/).exec("http://www.google.com/sdfsdf/fdsff")[1]
// returns sdfsdf/fdsff