2 xunbook xunbook 于 2014.04.01 18:22 提问

关于正则表达式的问题

有一个字符串如下:
a1-b1-c1|a2-b2-c2|a3-b3-c3 ......
每一个“|”分隔符分隔的如a1-b1-c1算一段,字符串有多少段不确定,总段数大于等于1

现在想用一个正则表达式获取每一段的第二个字符串,如a1-b1-c1中的b1,a2-b2-c2中的b2,所有的子段的第二个字符都要获取

请教各位,用正则表达式的话,怎么匹配出来呢?

3个回答

u010404010
u010404010   2014.04.01 20:14

public class Spit {

public static void main(String[] args) {

    String string = "a1-b1-c1|a2-b2-c2|a3-b3-c3";
    String[] strings = string.split("[-|]");
    for(int i = 0;i<strings.length;i++){
        if(i%3==1){
            System.out.println(strings[i]);
        }
    }
}

}
有什么问题再讨论,望采纳~

u010404010
u010404010 有什么问题再讨论,望采纳~
3 年多之前 回复
q107770540
q107770540   Ds   Rxr 2014.11.18 15:44
(?<=(^|\|)\w+\d-)[a-zA-Z\d]+
oyljerry
oyljerry   Ds   Rxr 2015.01.11 22:06

这个用s plit拆分再循环更简单

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!