Java Regex:匹配多个Occurences

时间:2015-08-06 03:41:17

标签: java regex

我有一个电话号码列表和其他文字,如下所示:

.directive('autofocus', [function () {
    return {
        require : 'ngModel',
        restrict: 'A',
        link: function (scope, element, attrs) {
            element.focus();
        }
    };
}])

我试图只匹配区号和数字的前3位数。

目前我正在使用以下Regex:

+1-703-535-1039  +1-703-728-8382 +1-703-638-1039  +1-703-535-1039 

但它只返回第一场比赛而不是所有比赛。

请参阅此链接以供参考:

https://regex101.com/r/oO1lI9/1

1 个答案:

答案 0 :(得分:1)

在regex101中,使用全局g标记来获取所有匹配

Demo

获取Java中的所有匹配项:

Pattern pattern = Pattern.compile("(\d{3}-\d{3})");
Matcher matcher = pattern.matcher("+1-703-535-1039  +1-703-728-8382 +1-703-638-1039  +1-703-535-1039");

// Find all matches
while (matcher.find()) {
    // Get the matching string
    String match = matcher.group();
}

Reference