url域的正则表达式

时间:2010-05-27 18:26:12

标签: regex

我如何从这些网址匹配:

http://foo.bar.com  
http://bar.com
来自第一个链接的

foo.bar和使用一个正则表达式的第二个链接中的bar

3 个答案:

答案 0 :(得分:1)

试试这个:

^http://(.*)\.com$

以下是如何在Python中使用它:

import re

for url in ['http://foo.bar.com', 'http://bar.com']:
    print re.match('^http://(.*)\.com$', url).group(1)

输出:

foo.bar
bar

答案 1 :(得分:1)

你没有提到你的语言。在Ruby中,

>> s = 'http://foo.bar.com'
>> s =~ /\/\/(.*)\./
>> $1
=> "foo.bar"

答案 2 :(得分:0)

在Javascript中,您需要使用与Mark Byers相同的正则表达式,无需更改任何内容:

var p = new RegExp("^http://(.*)\.com");

var out = p.exec(string_var_here);
if(out != null) {
  var str = out[1];
}