我们说我有一条看起来像这样的行
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 ??
有什么建议吗?
答案 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,", ""));