Javascript 当任何字符串跟随特定字符串时,如何捕获该字符串

Javascript 当任何字符串跟随特定字符串时,如何捕获该字符串,javascript,regex,Javascript,Regex,我正在尝试捕捉在中的或在处的之后直到行尾的所有字符 例如,假设: 约翰在公园里玩 结果应该是: 公园。 我试过: text.match(/(?:in|at)\s+([\w\s].*)(\n)/g); 与Strig#match()一起使用时,g修饰符会从最终结果中忽略捕获。另外,\n不是必需的,因为匹配除换行字符以外的任何字符 请注意,\s+已经在或中的之后使用了所有空格,因此,\s在[\w\s]中是多余的,您可以只保留\w或\s 此外,如果您只想在这两个介词后面匹配,而不想在sin、sat等后

我正在尝试捕捉在中的
或在
处的
之后直到行尾的所有字符

例如,假设:

约翰在公园里玩

结果应该是:

公园。

我试过:

text.match(/(?:in|at)\s+([\w\s].*)(\n)/g);

Strig#match()
一起使用时,
g
修饰符会从最终结果中忽略捕获。另外,
\n
不是必需的,因为
匹配除换行字符以外的任何字符

请注意,
\s+
已经在
或中的
之后使用了所有空格,因此,
\s
[\w\s]
中是多余的,您可以只保留
\w
\s

此外,如果您只想在这两个介词后面匹配,而不想在
sin
sat
等后面匹配,那么将
中的
at
作为整个单词进行匹配是有意义的

var text=“在公园里”;
var m=text.match(/\b(?:in | at)\s+(\w.*)/;
如果(m){
console.log(m[1]);

}
删除
g
(\n)
。抓取
匹配[1]
/(?:in | at)\s+([\w\s].*)(\n)/g.exec(“约翰在公园里玩”)[1]