Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.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
用于使用VCS在JavaScript中匹配子字符串的正则表达式_Javascript_Regex_Expression_Match - Fatal编程技术网

用于使用VCS在JavaScript中匹配子字符串的正则表达式

用于使用VCS在JavaScript中匹配子字符串的正则表达式,javascript,regex,expression,match,Javascript,Regex,Expression,Match,我目前正在用JavaScript编写一个短程序,该程序匹配字符串中的子字符串,中间有一个通配符 let string1 = "The man is outside."; let string2 = "I have two minutes."; let string3 = "The men are here."; 我试图找到一个包含“m_n”的正则表达式 我一直在尝试使用以下功能: let matching = function(string) { if (string.match(^m

我目前正在用JavaScript编写一个短程序,该程序匹配字符串中的子字符串,中间有一个通配符

let string1 = "The man is outside.";
let string2 = "I have two minutes.";
let string3 = "The men are here.";
我试图找到一个包含“m_n”的正则表达式

我一直在尝试使用以下功能:

let matching = function(string) {
    if (string.match(^m.*n$)) {
        console.log("it does");
    }
    else {
        console.log("it doesnt");
    }
}
但我一直收到错误“SyntaxError:Unexpected token^”


有人有什么建议吗?

我猜可能

m[^n]n

可能很接近,也可能不接近


如果您希望简化/修改/探索表达式,将在的右上面板中进行解释。如果您愿意,还可以在中查看它与一些示例输入的匹配情况


const regex=/m[^n]n/gm;
const str=`那个人在外面。
我有两分钟。
男人们在这里;
让m;
while((m=regex.exec(str))!==null){
//这是避免具有零宽度匹配的无限循环所必需的
if(m.index==regex.lastIndex){
regex.lastIndex++;
}
//可以通过'm`-变量访问结果。
m、 forEach((匹配,组索引)=>{
log(`Found match,group${groupIndex}:${match}`);
});

}
问题是您忘记分配/(正斜杠)。 我建议在if语句中使用test而不是match

let string=“msdfsxn”;
如果(/^m.*n$/.test(字符串)){
console.log(“它有”);
}否则{
log(“它没有”);

}
您希望它是自己的文字还是在另一个作品中,好吗<代码>/\bm.n\b/如果它自己的字。中间只有一个通配符?
\bm[^n]n\b
\bm.*?n\b