Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在URL中检测关键字_Javascript_Regex - Fatal编程技术网

Javascript 在URL中检测关键字

Javascript 在URL中检测关键字,javascript,regex,Javascript,Regex,我想检测如下内容: http://xxx.imageshack.com/xx/xx.xx x是任意长度的字母数。此外,它可能是http://xxx.imageshack.com/xxx.xxx或http://xx.imageshack.com/xxx/xxx.xxx。如何在Javascript中实现这一点 最后,我想确保该站点是imageshack而不是http://xxx.randomsite.com/xxx,因此*。uz.com之间的单词至关重要 我正在尝试这个 if (!/^http:.

我想检测如下内容:

http://xxx.imageshack.com/xx/xx.xx
x是任意长度的字母数。此外,它可能是
http://xxx.imageshack.com/xxx.xxx
http://xx.imageshack.com/xxx/xxx.xxx
。如何在Javascript中实现这一点

最后,我想确保该站点是imageshack而不是
http://xxx.randomsite.com/xxx
,因此
*。uz.com
之间的单词至关重要

我正在尝试这个

if (!/^http:..[^\/]+imageshack.+\/.+$/i.test(this.src)){
    alert(this.src);
}
它不能正常工作。
我只需要在if语句中的代码或提示来修复它。谢谢

我想这就是你想要的

/^http:\/\/[a-z]{2,3}\.imageshack\.com\/([a-z]{3}\/)?[a-z]{3}\.[a-z]{3}$/i.test( this.src )

我想这就是你想要的

/^http:\/\/[a-z]{2,3}\.imageshack\.com\/([a-z]{3}\/)?[a-z]{3}\.[a-z]{3}$/i.test( this.src )

谢谢,但是不行。顺便说一句,我在$I.test(this.src)之前加了$1。我得到了所有的URL,包括我想忽略的URL(正确的URL),但是我一个也没有得到。@illusionist,我忘了在子目录检查中跳过正斜杠,这可能是它失败的原因(但是你应该看到一个js错误)。我还在末尾添加了您的
$
。我已经根据你的要求测试了这个,它通过了。谢谢凯文,如果xxx中也有数字怎么办?是[a,z]{2,3}意味着它可以是从a到z,长度为2或3?如果我想用[a,z]和[0,9]@Illusionist的组合来表示长度0-0,那么下划线也可以吗?@Illusionist,
[a,z]{2,3}
表示字母a-z的任意组合2到3次。如果您只想添加数字,则将其设置为
[a-z0-9]{2,3}
。如果您想要/需要增加匹配的数量,您可以根据需要更改
{2,3}
。我建议你多谢,但这不管用。顺便说一句,我在$I.test(this.src)之前加了$1。我得到了所有的URL,包括我想忽略的URL(正确的URL),但是我一个也没有得到。@illusionist,我忘了在子目录检查中跳过正斜杠,这可能是它失败的原因(但是你应该看到一个js错误)。我还在末尾添加了您的
$
。我已经根据你的要求测试了这个,它通过了。谢谢凯文,如果xxx中也有数字怎么办?是[a,z]{2,3}意味着它可以是从a到z,长度为2或3?如果我想用[a,z]和[0,9]@Illusionist的组合来表示长度0-0,那么下划线也可以吗?@Illusionist,
[a,z]{2,3}
表示字母a-z的任意组合2到3次。如果您只想添加数字,则将其设置为
[a-z0-9]{2,3}
。如果您想要/需要增加匹配的数量,您可以根据需要更改
{2,3}
。我建议吸收