正则表达式不是运算符

时间:2010-06-02 19:59:11

标签: javascript regex

我需要使用正则表达式从url域中提取一个值,该域将排除除主机(例如:wordpress)和域类型(例如.com)之外的所有内容。网址是动态的,每个结果包含2-3个值(www.example.com或example.org)。我试图使用这个表达式,但我只回到我试图排除的每个项目的第一个字母:

Expresssion

(?!wordpress|com|www)(\w+|\d+)

字符串

  

example.wordpress.com

结果

  1. 示例
  2. ordpress
  3. OM
  4. 期望的结果
  5. 例如

    非常感谢任何帮助

3 个答案:

答案 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