java中跳过拆分的正则表达式

时间:2014-09-28 04:46:58

标签: java regex

我们说我有一条看起来像这样的行

40  ,O12,O23,O34,O2

40和逗号,之间的标签页。

我需要一个输出

的正则表达式
O12,O23,O34,O2 

作为一个String

line.splits(",") // will splits commas , but how to skip the first which is 40 in the sentence ?? 

有什么建议吗?

3 个答案:

答案 0 :(得分:4)

不要使用正则表达式。只需找到"\t,"的第一个匹配项,并从该事件的结尾处对原始String进行子串。

String text = "40\t,O12,O23,O34,O2";
System.out.println(text.substring(text.indexOf("\t,") + 2));

答案 1 :(得分:1)

indexOf方法返回字符串中第一个逗号的索引。添加1以启动逗号后的子字符串。

line.substring(a.indexOf(",")+1);

答案 2 :(得分:1)

只需匹配从开头到制表符加上以下,的所有字符。用空字符串替换匹配的字符将为您提供所需的输出。

String text = "40\t,O12,O23,O34,O2";
System.out.println(text.replaceFirst(".*\t,", ""));

OR

String text = "40\t,O12,O23,O34,O2";
System.out.println(text.replaceAll("^.*\t,", ""));

OR

String text = "40\t,O12,O23,O34,O2";
System.out.println(text.replaceAll("^.*?\t,", ""));