English 中文(简体)
Regex tocomp www.example.com 仅限http://www.un.org
原标题:
  • 时间:2009-05-14 23:17:21
  •  标签:
最佳回答

也许像这样的东西?

text = text.replace(/(^|s)(www(?:.w+){2,})/ig, "$1http://$2");

这与《欧洲刑法》一致:

  • "www.example.com" -> "http://www.example.com"
  • "Visit www.example.com" -> "Visit http://www.exmaple.com"
  • "Visit www.example.co.uk" -> "Visit http://www.example.co.uk"

但不是:

  • "http://www.example.com"
  • "ftp.example.com"
  • "www.com"
问题回答

您是否在更大范围内寻找<代码>www.example.com的出现? 也许你可以更具体地了解你想要达到的成绩,但像你这样可以做的事情:

text = text.replace(/(s)(www.w+.w+)/ig, "$1http://$2");

<代码><>>/代码>(与字数相匹配)的问题是,该代码也与<代码>http://和相匹配,因为<代码><<<>>>>>/不是字数。

你们是否希望这样做? 封面确保案文从www.www.开始。 但这显然会与其他子主失败。

text = text.replace(/^www.w+.w+$/ig, "http://$&");

EDIT: 定期见Chris Lutz s comment. 我先前曾进行过测试,但是,一艘轮.(挖土机、一架替罪羊 etc等)似乎已经成行。 我要重申,这是脆弱的。

您可使用^指标(anchor)要求案文与www:

echo -e "http://www.example.com
anythingwww.example.com
www.example.com" | grep "^www.example.com"
www.example.com

You can use a anti lookbehind claim. ......

(?<!http://)(?:www.example.com)





相关问题