0

我有这样的文字

500     Robin Stuart    zzzzzzz

我想获得包含在两个选项卡中的文本 Robin STuart。有人可以帮我用正则表达式吗。我想出了(^.*?)(\t)(^.*?)(\t)但它没有编译。

4

2 回答 2

2

您不必要地使用^第二次(^.*?)(\t)(^.*?)(\t)- 可能是复制粘贴错误。采用:

String s = "500 Robin Stuart    zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz";
Pattern p = Pattern.compile("(\t)(.*?)(\t)");
Matcher m1 = p.matcher(s);
if (m1.find()){
    System.out.println(m1.group(2));
}
于 2013-04-14T17:56:23.137 回答
0

尝试

    String s = "500\tRobin Stuart\tzzzzzzz";
    s = s.replaceAll(".*\t(.+)\t.*", "$1");
    System.out.println(s);
于 2013-04-14T18:15:07.060 回答