尝试将变量传递给强大的正则表达式,我可以让它在函数外部工作,但不知道如何让它在函数内工作,或者为什么它匹配[1]似乎返回null。关于替换的大量信息,但不是在关键字后找到单词。
这是我所拥有的
var s = 'match my word after this word';
function returnWordAfter(theSentence, theWord){
var TheRegEx = new RegExp("/"+theWord+"\s(\w*)/");
var matches = theSentence.match(TheRegEx, '');
return matches[1];
}
var matchedWord = returnWordAfter(s, "this");
console.log(matchedWord);
答案 0 :(得分:0)
不要放置周围的/
并转义反斜杠(\
):
new RegExp(theWord + "\\s(\\w*)");
var theWord = "hello";
var theRegEx = new RegExp(theWord + "\\s(\\w*)");
"hello world".match(theRegEx) // => ["hello world", "world"]