java中正则表达式匹配后的使用问题,希望高手指点
String s1="如果火车是轧死了人,那么火车上有辗轧的痕迹和血迹。火车上没有辗轧的痕迹和血迹。";
String reg = "[如果是,那么有。没有\\s++]";
String[] strs = s1.split(reg);
for(int i = 0; i < strs.length; i++){
System.out.println(strs[i]);
}
这样可以输出我想要的结果,但我不想输出,而是要使用这些结果(就是那些被分割的字符串),可怎么也存不下来。比如
String s1="如果火车是轧死了人,那么火车上有辗轧的痕迹和血迹。火车上没有辗轧的痕迹和血迹。";
String reg = "[如果是,那么有。没有\\s++]";
String[] strs = s1.split(reg);
System.out.println(strs[0]);
结果为空,为什么啊,要怎么样才能保存下分割好的字符串呢?
答案:String[] strs = s1.split(reg);
List<String> list = new ArrayList<String>();
for(int i = 0; i < strs.length; i++){
list.add(strs[i]);
}
其他:换成我下面的代码试试,replaceAll方法的一个参数接受的是正则表达式,
上一个:求《java ee web 开发实例精解》郝玉龙和尹建平编写的书的PDF等格式文件下载
下一个:java中的Model1和Model2有什么区别