JavaScript RegEx匹配失败

时间:2012-08-16 01:32:33

标签: javascript regex

我在javascript中使用正则表达式匹配字符串时出现问题。我试图让所有内容都达到“at”这个词。我使用以下,虽然它没有返回任何错误,它也没有做任何事情。

var str = "Team A at Team B";
var matches = str.match(/(.*?)(?=at|$)/);

在遇到这篇SO帖子Regex to capture everything before first optional string之前,我尝试了多种正则表达式模式,但它并没有返回我想要的内容。

1 个答案:

答案 0 :(得分:1)

删除第一个捕获组的?和第二个捕获组|$,然后添加^以标记字符串的开头:

str.match(/^(.*)(?=at)/)

或者(我个人觉得下面更容易阅读,但是你的电话):

str.substr(0, str.search(/\bat\b/))