• java-正则表达式8


    package com.day10.Regex正则表达式;

    public class Demo8Regex {

      /**
      * @param args
      * 常见对象(正则表达式的分组功能)
      * A:正则表达式的分组功能
      * 捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 ((A)(B(C))) 中,存在四个这样的组:
      *
        1 ((A)(B(C)))
        2 (A
        3 (B(C))
        4 (C)

       组零始终代表整个表达式。
       B:案例演示
       a:切割
        需求:请按照叠词切割: "sdqqfgkkkhjppppkl";
       b:替换
        需求:我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程
        将字符串还原成:“我要学编程”。
      */
      public static void main(String[] args) {
        //叠词 快快乐乐,高高兴兴
        String regex="(.)\1(.)\2";//\1代表第一组又出现一次,\2代表第二组又出现一次
        System.out.println("快快乐乐".matches(regex));//true

        //叠词 高兴高兴
        String regex2="(..)\1";
        System.out.println("高兴高兴".matches(regex));//false

        String s="sdqqfgkkkhjppppkl";
        String regex3="(.)\1+";//+代表第一组出现一次到多次
        String[] arr=s.split(regex3);
        for (int i = 0; i < arr.length; i++) {
          System.out.print(arr[i]);//sdfghjkl
        }
        System.out.println();

        String s1="我我....我...我.要...要要...要学....学学..学.编..编编.编.程.程.程..程";
        String s2=s1.replaceAll("\.+","");
        System.out.print(s2);//我我我我要要要要学学学学编编编编程程程程
        System.out.println();
        String s3=s2.replaceAll("(.)\1+","$1");//$1代表第一组中的内容
        System.out.println(s3);//我要学编程

      }

    }

  • 相关阅读:
    百度地图学习
    JS中call和apply区别有哪些 记录
    初次学习AngularJS
    C#中Abstract和Virtua笔记,知识
    css学习笔记四
    css学习笔记三
    jquery基础 笔记三
    jquery基础 笔记二
    jquery基础 笔记一
    负边距在布局中的应用
  • 原文地址:https://www.cnblogs.com/zhujialei123/p/8179506.html
Copyright © 2020-2023  润新知