黑马程序员技术交流社区
标题:
为何字符串中还有没去掉的.?
[打印本页]
作者:
陈延真
时间:
2013-6-11 19:04
标题:
为何字符串中还有没去掉的.?
本帖最后由 陈延真 于 2013-6-13 22:09 编辑
/*
* 我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程
* 利用正则表达式将字符串还原成:
* "我要学编程"。
*/
public class RegexTest {
public static void main(String[] args) {
String str = "我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程";
String regex1 = "\\.+";
String[] strArray = str.split(regex1);
for(String s1 :strArray){
System.out.println(s1);
}
String str2 = str.toString();
String regex2 = "(.)\\1+";
String s = str2.replaceAll(regex2, "$1");
System.out.println(s);
}
}
作者:
j816326
时间:
2013-6-11 20:56
/*
* 我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程
* 利用正则表达式将字符串还原成:
* "我要学编程"。
*/
public class RegexTest {
public static void main(String[] args) {
String str = "我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程";
String regex1 = "\\.+";//改成String regex1="\\."就可以了。
String[] strArray = str.split(regex1);
for(String s1 :strArray){
System.out.println(s1);
}
String str2 = str.toString();
String regex2 = "(.)\\1+";
String s = str2.replaceAll(regex2, "$1");
System.out.println(s);
}
}
作者:
Heart
时间:
2013-6-12 15:26
本帖最后由 Heart 于 2013-6-12 17:19 编辑
你的正则表达式写的不对,首先:.就没有转义;而且 str2.replaceAll(regex2, "$1");方法也不对,第二个参数应该是:使用给定的字符串替换匹配给定的正则表达式的子字符,所以这里应该为 ""字符串。
修改后代码如下:
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程";
String regex1 = "\\.+";
String[] strArray = str.split(regex1);
for(String s1 :strArray){
System.out.println(s1);
}
String str2 = str.toString();
String regex2 = "(\\.)+";
String s = str2.replaceAll(regex2, "");
System.out.println(s);
}
复制代码
作者:
孙百鑫
时间:
2013-6-13 06:19
楼主您好!如果问题得到解决请将题目改成"已解决"
编辑文章-->修改 如果问题没有得到解决请继续发问谢谢您的配合{:soso_e100:}
作者:
陈延真
时间:
2013-6-13 22:10
孙百鑫 发表于 2013-6-13 06:19
楼主您好!如果问题得到解决请将题目改成"已解决"
编辑文章-->修改 如果问题没有得到解决请继续发问谢谢您的 ...
版主,求技术分!:lol
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2