JS正则表达式用于匹配URL中的不同#tags

时间:2011-06-14 14:44:11

标签: javascript regex

我需要两个正则表达式。 首先,我想检查我的网址是否包含#videos标签。如果是的话,我想得到第二个#tag的值。该值可以包含各种字符;

http://local/default.php#videos#12345
http://local/default.php#videos#g5458f
http://local/default.php#videos#0-e4a5d

这是我到目前为止所得到的:

if (window.location.hash = 'videos') {
      var url = window.location.hash,
          id = url.match(regex-goes-here);  // output e.g string '12345'
}

(不确定我的极其简单的检查(window.location.hash ='videos')是否适用于两个主题标签..?可能有更好的方法来检查URL,如果有,请告诉:-)

1 个答案:

答案 0 :(得分:3)

您可以获得这样的标签数组:

var tags = window.location.hash.replace(/^#/, '').split('#');

如果是http://local/default.php#videos#12345tags[0]视频tags[1] 12345 。您可以使用tags.length来确定有多少个标签。