我需要匹配“基本”url,我的意思是:
Not match --> http://google.com
Not match --> http://www.google.com
Not match --> www.google.com
Match! --> google.com
我试图使用负向查看来确保没有 http://或 www,但它似乎无法正常工作。
最佳答案
是否必须只使用一个正则表达式?
您可以拥有第一个匹配所有找到的 URL 的正则表达式。类似的东西:
\b.+?\.\w{2,4}\b
然后过滤掉所有的匹配,保留不匹配的:
^(http://|www)
老实说,除非绝对必要,否则我不会使用 Regex。
注意:
您总能找到更好的正则表达式来匹配 URL。这里的问题是它们不能以 http://
或 www
开头,所以我们不能对正则表达式限制太多。准备好接受其他根本不是 url 的匹配项,例如:
昨天。但是
昨天我在那儿。但是没人看见我
关于php - 尝试使用正则表达式获取基本 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5945229/