我想从下面的字符串中找到一个模式.所有单词都包含"MATCH.TEXT3",可能是最新的匹配结束号码.
{MATCH.TEXT1.1=[1, admin, 07/10/14 09:29:34], MATCH.TEXT2.2=[2, admin, 07/10/14 10:01:08], MATCH.TEXT3.3=[3, admin, 07/10/14 10:08:01], MATCH.TEXT3.4=[4, admin, 07/10/14 11:08:01], MATCH=[TEXT3]}
Run Code Online (Sandbox Code Playgroud)
预期产出:
MATCH.TEXT3.4
or
MATCH.TEXT3.3
MATCH.TEXT3.4
Run Code Online (Sandbox Code Playgroud)
您可以在字符串上使用findAll()方法来提取与给定模式匹配的标记:
String s = '{MATCH.TEXT1.1=[1, admin, 07/10/14 09:29:34], MATCH.TEXT2.2=[2, admin, 07/10/14 10:01:08], MATCH.TEXT3.3=[3, admin, 07/10/14 10:08:01], MATCH.TEXT3.4=[4, admin, 07/10/14 11:08:01], MATCH=[TEXT3]}'
List<String> tokens = s.findAll(/MATCH\.TEXT3(\.[0-9]+)?/)
assert tokens == ['MATCH.TEXT3.3', 'MATCH.TEXT3.4']
String last = tokens.last()
assert last == 'MATCH.TEXT3.4'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
448 次 |
| 最近记录: |