[英]RegEx match not working
所以我想要匹配的是以“ .ProjectName”结尾的任何东西,所以我写了一个小测试用例。 我故意使用RegExp创建模式,因为在实际情况下,我将使用一个变量作为reg ex模式的一部分。 我不确定我的模式是否正确(90%正确),或者我是否滥用匹配功能(70%正确地使用它)。 当第二种情况下notMatchName不应返回任何内容时,打击代码将返回某些内容
var inputName = "ProjectName";
var matchName = "userInput_Heading.Heading.ProjectName";
var notMatchName = "userInput_Heading.Heading.Date";
var reg = new RegExp(".*[." + inputName + "]");
console.log(reg);
console.log(matchName.match(reg));
console.log(matchName.match(reg)[0]);
console.log(notMatchName.match(reg));
console.log(notMatchName.match(reg)[0]);
这是帮助的JsFiddle 。
采用
var reg = new RegExp(".*\." + inputName);
方括号的意思是:一个字符,这是方括号内的字符之一。 但是您需要几个字符,首先是一个点,然后是inputName
的第一个字符, inputName
。
您的正则表达式应为.*\\.projectName
如果您重写您的声明,它将是
var reg = new RegExp(".*\." + inputName)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.