Java字符串正则表达式匹配语法

时间:2013-12-04 14:36:30

标签: java regex

有人可以解释为什么这在Java中不起作用,但在我测试过的其他所有工具中都会出现。期望的字符串类型类似于:a004871-5553:z05072-990

预期结果是匹配行开头的a0

String[] parts = nextLine[0].split(":");
String part1 = parts[1]; 
if (part1.matches("a[0-9]"))....

1 个答案:

答案 0 :(得分:1)

这一行是问题所在:

if (part1.matches("a[0-9]"))

因为String#matches匹配完整输入而不仅仅是输入的一部分

这应该可行:

if (part1.matches("a[0-9-]+")) {...}