Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.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如何检查aa_bb_Javascript_Regex - Fatal编程技术网

正则表达式javascript如何检查aa_bb

正则表达式javascript如何检查aa_bb,javascript,regex,Javascript,Regex,我试图在URL中查找2位字符串。例如: www.abc.com/ff_gg/abc 我可以通过以下方式进行检查: if (window.location.href.indexOf("ff_gg") > -1) { // } else ... 但是ff\ustrong>gg可以是一个随机字符串。如何使用正则表达式将url中的ff和gg保存为变量ff和gg将由分隔 ([a-zA-Z]{2})_([a-zA-Z]{2}) 用u分隔的2个捕获组可以为正则表达式实现这一技巧 然后使用

我试图在URL中查找2位字符串。例如:

www.abc.com/ff_gg/abc
我可以通过以下方式进行检查:

if (window.location.href.indexOf("ff_gg") > -1) {
    // 
} else ...
但是ff\ustrong>gg可以是一个随机字符串。如何使用正则表达式将url中的
ff
gg
保存为变量
ff
gg
将由
分隔

([a-zA-Z]{2})_([a-zA-Z]{2})
用u分隔的2个捕获组可以为正则表达式实现这一技巧

然后使用
match()
谁将返回匹配的组

用u分隔的2个捕获组可以为正则表达式实现这一技巧

然后使用
match()
谁将返回匹配的组


在javascript中,您可以创建一个
RegExp
对象。有关
RegExp
对象的更多信息,请参阅

以下示例应该有效:

var url=“www.abc.com/ff_gg/abc”;
var reg=新的RegExp(([a-zA-Z]{2})Z([a-zA-Z]{2})”;
如果(注册测试(url)){
var matches=url.match(reg);
var ff=匹配项[1];
var gg=匹配项[2];
控制台日志(“组1:+ff”);
console.log(“group2:+gg”);
log(“做某事”);

}
在javascript中,您可以创建一个
RegExp
对象。有关
RegExp
对象的更多信息,请参阅

以下示例应该有效:

var url=“www.abc.com/ff_gg/abc”;
var reg=新的RegExp(([a-zA-Z]{2})Z([a-zA-Z]{2})”;
如果(注册测试(url)){
var matches=url.match(reg);
var ff=匹配项[1];
var gg=匹配项[2];
控制台日志(“组1:+ff”);
console.log(“group2:+gg”);
log(“做某事”);
}
您可以与正则表达式一起使用,而不是。或

还要看明白表达

const text='www.abc.com/ff_gg/abc';
常数rx=/\/[a-z]{2}{[a-z]{2}\//i;
如果(文本搜索(rx)>-1){
console.log('found');
}否则{
console.log('notfound');
}
如果(接收测试(文本)){
console.log('found');
}否则{
console.log('notfound');
}
您可以与正则表达式一起使用,而不是。或

还要看明白表达

const text='www.abc.com/ff_gg/abc';
常数rx=/\/[a-z]{2}{[a-z]{2}\//i;
如果(文本搜索(rx)>-1){
console.log('found');
}否则{
console.log('notfound');
}
如果(接收测试(文本)){
console.log('found');
}否则{
console.log('notfound');

}
/(\d{2}\ud{2})/
是否足够?ff和gg都是数字?这些是字母,所以您要查找的是相同字母的2倍?2位字符串令人困惑
/^https?:\/\/[^\/]+\/(\d{2}\ud{2})(?:\/$)/.exec(window.location.href)[1]
?是否
/(\d{2}\ud{2})/
足够?ff和gg都是数字?这些都是字母,您要查找的字母是同一字母的2倍?两位字符串混淆
/^https?:\/\/[^\/]+\/(\d{2}\ud{2})(?:\/$)/.exec(window.location.href)[1]
\w:匹配基本拉丁字母表中的任何字母数字字符,包括下划线。相当于[A-Za-z0-9_])。
谢谢,我将其更改为[A-Za-Z]。
\w:匹配基本拉丁字母表中的任何字母数字字符,包括下划线。相当于[A-Za-z0-9_]。
谢谢,我将其更改为[A-Za-Z]。您能解释一下为什么在使用搜索时需要检查大于-1的值吗?您能解释一下为什么在使用搜索时需要检查大于-1的值吗?