带通配符的URL var

时间:2019-07-19 17:42:50

标签: javascript url wildcard

我的HTML中有这个JS代码

<html>
<body>
<form name="formurl" id="form1" method="post" action="../search.php" onSubmit="document.getElementByName('url').value=;">
<input type="hidden" id="url" name="url" value="" />
<input type="hidden" id="usrgn" name="usrgn" value="" />
</form>
<script type="text/javascript">

  var searchprimary = "https://site12.org/";
  var searchsecundary1 = "https://site12.org/folder2/";
  var searchsecundary2 = "https://www.site12.org/folder2/folder3/";
  var searchsecundary3 = "https://www.site12.org/folder2/folder3/folder1/";
  var searchsecundary4 = "https://www.othersite.org";
  var searchsecundary5 = "https://www.othersite.org/folder4/folder3/";
  var searchsecundary6 = "https://www.othersite.org/folder4/folder10/";


</script>
<script type="text/javascript">
    var x = window.location.hostname;
    var y = document.referrer;
    document.getElementById("demo").innerHTML = y;
    var z = document.referrer.split('/')[2];
    if (z == searchprimary){}
    else if (z == searchsecundary1) {}
    else if (z == searchsecundary2) {}
    else if (z == searchsecundary3) {}
    else if (z == searchsecundary4) {}
    else if (z == searchsecundary5) {}
    else if (z == searchsecundary6) {}
    else
    {
        var usrgnt = navigator.userAgent;
        document.forms["formurl"].url.value = y;
        document.forms["formurl"].usrgn.value = usrgnt;
        document.forms["formurl"].submit();
}
  </script>
</body>
</html>

我想创建一个这样的通配符

https://site12.org/folder2/ * (/ folder2 /,folder3 / folder4 /,folder5 /等)

我这样做了,但是它对我不起作用:

<script type="text/javascript">
    var searchprimary = "https://site12.org/folder2/[^ ]*";
    var searchsecundary4 = "https://www.othersite.org.com/folder4/[^ ]*"; 
   </script>

有人知道为什么它不起作用吗?

1 个答案:

答案 0 :(得分:1)

您需要使用正则表达式。我认为您想使用它,但不知道如何使用(根据您的问题)。

方法如下:

var yourURL = "....";
var urlRegEx = /http:\/\/site.com\/page\/[^/\s]+\/?/i;
if (urlRegEx.test(urlRegEx)) { /* ... */ }