【发布时间】:2014-11-15 13:29:54
【问题描述】:
我正在做一个需要我匹配 URL 的项目。我对正则表达式很糟糕。但我相信结构如下 -
- 字母和符号,除了可以重复 1 到任意次数的空格,
- 紧跟一个点 0 或 1 次,
- 后跟字母和符号,空格除外,1 到多次,
- 后跟一个点“.” ,
- 后跟有效扩展名列表(如 com、org、in(将在此处指定))
- 后跟一个“/” 0 或 1 次
- 如果为 0,则紧跟空格
- 如果是 1 ,那么除了 之外的单词和符号
我如何为此形成正则表达式
【问题讨论】:
-
@AvinashRaj 这个Regex 我试过了。只是意识到它接受这样的字符串。然后我意识到我可以匹配 .com,.org,in 和所有..
-
Ruby 使用 perl 风格的正则表达式,the url spec 的正则表达式比你想象的更难。如果您不确定,您可能会更好地使用其他人为您构建的类似上面建议的答案。
-
@ShaneQful 不处理像 fb.me 9gag.com 这样的 URL。只需要匹配在 twitter 和 http://*.*.*/*
和 *.*.*/*(无空格)中找到的 URL -
@AvinashRaj 我试过这个regex。但史诗匹配失败
-
为什么是 python 和 ruby 标签?