Javascript 正则表达式解析出@references,包括引号?

Javascript 正则表达式解析出@references,包括引号?,javascript,regex,Javascript,Regex,我有一个文本文件,其中包括如下部分 你好@David我的名字是@fredfoo“,这是一个测试 “@”总是表示名字的开头,引用Fred Foo的话是因为他的名字中有空格。如何使用JavaScript和regex返回所有名字的列表,即"David"和"Fred Foo"??谢谢 您可以使用: var re = /@("[^"]+"|\S+)/g, matches = [], input = 'Hello @David my name is @"Fred Foo" and this

我有一个文本文件,其中包括如下部分

你好@David我的名字是@fredfoo“,这是一个测试

“@”总是表示名字的开头,引用Fred Foo的话是因为他的名字中有空格。如何使用JavaScript和regex返回所有名字的列表,即"David"和"Fred Foo"??谢谢

您可以使用:

var re = /@("[^"]+"|\S+)/g,
    matches = [],
    input = 'Hello @David my name is @"Fred Foo" and this is a test';
while (match = re.exec(input)) matches.push(match[1]);

console.log(matches); // [David, "Fred Foo"]

太好了,谢谢!我添加了match[1]。replace(/\“/g,”)也可以解析出引号。