Javascript 使用正则表达式在单词后获取名称

Javascript 使用正则表达式在单词后获取名称,javascript,regex,Javascript,Regex,我试图在一个确定的单词后找到第一个单词,这就是我的做法: 正文: 正则表达式: var reg = new RegExp('Companie' + '.*?(\\w\\S*)', 'i'); var match = reg.exec(text); 输出将是: 'Stack'. 我想收到所有的名字,但这个名字是友好的,有时只有一个字,有时5个,有时2个。。等 可能吗 谢谢。我想说,这不是一个应该使用正则表达式的场景,而是类似这样的场景: var str='Companie:Stack o

我试图在一个确定的单词后找到第一个单词,这就是我的做法:

正文:

正则表达式:

var reg = new RegExp('Companie' + '.*?(\\w\\S*)', 'i');
var match   = reg.exec(text);
输出将是:

'Stack'.
我想收到所有的名字,但这个名字是友好的,有时只有一个字,有时5个,有时2个。。等

可能吗


谢谢。

我想说,这不是一个应该使用正则表达式的场景,而是类似这样的场景:

var str='Companie:Stack over flow';
var name=str.split('Companie:')[1].trim();

警报(名称)我想说,这不是应该使用正则表达式的场景,而是类似这样的场景:

var str='Companie:Stack over flow';
var name=str.split('Companie:')[1].trim();

警报(名称)迈克尔有一个很好的答案,但如果你想用正则表达式,你可以用

var text = "Companie: 'Stack over flow';"
var reg = /^Companie: '(.*)';$/
var match = reg.exec(text)[1];
match
的值为

"Stack over flow"

迈克尔有一个很好的答案,但是如果你想要一个正则表达式,你可以选择

var text = "Companie: 'Stack over flow';"
var reg = /^Companie: '(.*)';$/
var match = reg.exec(text)[1];
match
的值为

"Stack over flow"

这就产生了
“堆栈溢出”
而不是
“堆栈”
@Oriol这就是OP想要的问题,问题是“第一个单词”,我猜它只是
“堆栈”
。但是你可能是对的,因为问题不太清楚。这会产生
“堆栈溢出”
,而不是
“堆栈”
@Oriol这就是OP想要的。问题说的是“第一个单词”,我想这只是
“堆栈”
。但你可能是对的,因为问题不太清楚。你的描述中有很多漏洞。不幸的是,如果没有好的例子,答案可能对你的想法没有帮助。你的描述中有很多漏洞。不幸的是,如果没有好的例子,答案可能对你的想法没有帮助。