如何在Javascript中使用通配符验证URL路径?

如何在Javascript中使用通配符验证URL路径?,javascript,jquery,Javascript,Jquery,str='http://*.foo.com/bar/'是有效字符串 如何在JavaScript中编写正则表达式来验证这一点 `http://xyz.foo.com/bar/` ✓ valid `http://xyz.foo.com/bar/abc/` ✗ invalid `http://xyz.foo.com/` ✗ invalid 试着在家里玩。它有很多好的信息,完成后会在页面底部为您提供一个javascript正则表达式 试试这个: var url = // you

str=
'http://*.foo.com/bar/'
是有效字符串

如何在JavaScript中编写正则表达式来验证这一点

`http://xyz.foo.com/bar/`     ✓ valid
`http://xyz.foo.com/bar/abc/` ✗ invalid
`http://xyz.foo.com/`         ✗ invalid
试着在家里玩。它有很多好的信息,完成后会在页面底部为您提供一个javascript正则表达式

试试这个:

var url = // your url
url.match(/http://[a-zA-Z_0-9]+\.foo\.com/bar/$/g)

$
匹配字符串的结尾。最后的
$
将确保后面没有文本。

您能提供更多详细信息吗

e、 g,
/^http://[a-zA-Z]+.foo.com/bar/$/g

如果它位于一行中(通过^$分隔符),则将执行您正在查找的操作。它将匹配xyz,但不匹配xyz1,如果要包含数字,则很容易修复xyz1


如果您还有更多问题,请尝试一下,并告诉我。

您可以在页面加载后将
位置
对象的一些属性分配给您自己的变量(因为
位置
之后可以自由更改):

然后创建一个RegExp对象:

var regex = '.*\.foo\.com/bar/$';
var testURL = new RegExp(regex);
并测试URL:

if (testURL(hostURL + pathURL)) {
    //do something
}

这个正则表达式应该为你做

[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov)\b

将上述参数指定给一个变量。并使用javascript的test()方法测试此模式是否与您选择的url匹配。如果需要,请更新此内容以满足您的需要。

将xyz替换为
[a-zA-Z0-9.]
您需要避开月经
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov)\b