日期:2014-05-18  浏览次数:20976 次

请帮忙补充一下我的正则,网址相关的,谢谢。
我目前的功力只能写到:
http://[a-z]+\.(ttt.com|ccc.cn|bbb.cn)

它能匹配:
http://www.ttt.com
http://mx.ccc.cn
http://a.bbb.cn
等。

也就是说,我要匹配属于ttt.com或ccc.cn或bbb.cn这三个网站的网址。主机头随意,不一定是www,但一定要有。所以我用[a-z]+。大小写方面我可以在IsMatch中加入忽略大小写的参数即可。

可以,如果继续匹配一个网址接下来的内容呢?
比如:(以ttt.com为例即可)
http://www.ttt.com
http://www.ttt.com/
http://www.ttt.com/(接下来的字符不可能有空格、中文,只可能是:a-z 0-9 . ? & | % - )的零次或多次

谢谢了!

------解决方案--------------------
后面加上
(\/[a-z0-9\.\?\&\|\%\-]*)?【只能匹配一层,不能匹配http://www.ttt.com/XXX/YYY】
(\/[a-z0-9\.\?\&\|\%\-]*)*【能匹配多层,能匹配http://www.ttt.com/XXX/YYY】