黑马程序员技术交流社区

标题: 正则表达式的切割实例 [打印本页]

作者: zapoo    时间: 2016-2-17 10:31
标题: 正则表达式的切割实例
package com.java.regex;
/**
*
* 需求1:请按照叠词切割: "sdqqfgkkkhjppppkl";
* 需求2:我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程
                将字符串还原成:“我要学编程”。
*/
public class RegexTest7 {
        public static void main(String[] args) {
                demo1();
                String s = "我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程";
                //定义正则表达式
                String regex = "(\\.)+";
                String s1 = s.replaceAll(regex, "");
                String regex1 = "(.)\\1+";                        // \\1表示第一组又出现一次  +表示出现一次或者多次
                String s2 = s1.replaceAll(regex1, "$1");  //$1表示第一组的内容
                System.out.println(s2);
        }

        private static void demo1() {
                String s = "sdqqfgkkkhjppppkl";
                //定义正则表达式
                String regex = "(.)\\1+";
                String[] split = s.split(regex);
                for (int i = 0; i < split.length; i++) {
                        System.out.print(split[i]);
                }
                System.out.println();
        }
}

截图.PNG (1.28 KB, 下载次数: 11)

运行结果

运行结果

作者: youngrivers    时间: 2016-2-17 16:40
这个东西有点重要的,虽然在网上都可以查到,但是以后工作中用到时能懂非常重要




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2