我需要检查包含/ wp-content /的锚路径。
例如,<a href="http://domain.com/wp-content/...">Link1</a>
在这种情况下,RegExp必须匹配模式与url并返回数组
中的字符串 ['http://domain.com', 'domain.com', 'http://domain.com/wp-content/', '']
在我的代码中我使用了这个,但是我做错了
$('a').live('click', function(e) {
var host = thisClick.attr('href'),
pattern = /(?:https?:\/\/)?(?:www\.)?(.*?)?(\/wp-content\/)?\//,
matchReg = host.match(pattern);
});
上线代码有什么问题?
答案 0 :(得分:2)
查看应用正则表达式时会发生什么:
<
与h
中的(?:https?:\/\/)?
不匹配。继续前进。w
中的(?:www\.)?
不匹配,继续.
(.*?)?
匹配
/
或/wp-content/
<a href="http:/
匹配。你不能使所有东西都是可选的,或者没有任何锚,正则表达式可以用来到达URL的开头。如果您尝试始终匹配<a>
代码中的内容,请尝试:
/href="(((?:https?:\/\/)?(?:www\.)?(.*?)?)\/wp-content\//
/wp-content/
,这是您的标准。wp-content/
http://domain.com/wp-content/
,第二组http://domain.com
,第三组domain.com