黑马程序员技术交流社区
标题:
正则表达式的一个小练习,求解
[打印本页]
作者:
love~陌
时间:
2014-3-26 09:08
标题:
正则表达式的一个小练习,求解
/*
需求:
将下列字符串转成:我要学编程
*/
import java.util.regex.*;
class RegexTest
{
public static void main(String[] args)
{
String str="我我。。。。。。。。要。。要。。要。。。学。。。学。。。编。。。编。。。编程";
str=str.replaceAll("\\。+","");
System.out.println(str);
System.out.println("--------我是华丽丽的分割线-------");
str=str.replaceAll("(.)\\1+","$1");
System.out.println(str);
System.out.println("--------我是华丽丽的分割线-------");
}
}
问题:
String str="我我。。。。。。。。我要。。我要。。我要。。。要学。。。要学编。。。编。。。编。。。编程";
在这种情况下,上面代码就不能满足需求了,请问该如何修改代码?
复制代码
求解,谢谢各位
作者:
上官睿鹏
时间:
2014-3-26 09:54
str=str.replaceAll("\\。+","");这句中的中文“。”前面不用加\\
作者:
╰青青子佩ˊゝ
时间:
2014-3-28 07:54
两个地方提醒你!!
class RegexTest{
public static void main(String[] args){
String str="我我。。。。。。。。我要。。我要。。我要。。。要学。。。要学编。。。编。。。编。。。编程";
str=str.replaceAll("\\。+","");
System.out.println(str);
System.out.println("--------我是华丽丽的分割线-------");
str=str.replaceAll("(..)\\1+","$1");//1.你的这个地方的组里,即()里面加一点
str=str.replaceAll("(.)\\1+","$1");//2.再加上这一行代码,就ok啦
System.out.println(str);
System.out.println("--------我是华丽丽的分割线-------");
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2