zoukankan      html  css  js  c++  java
  • Java常用正则表达式

    ^相当于正则表达式里面的取反

    匹配一个或多个数字:\d+,[0-9]{1,}

    匹配中文:[u4e00-u9fa5](unicode编码,是中文编码的开始和结束两个值)

    匹配英文字母:[a-zA-Z]

    1、匹配字符串里的数字

    public static void main(String[] args) { 
           String regEx = "[^0-9]";
            String str1 = "abc123d456dfdAA;78';./";
            String str2 = "12345678";
            Pattern pattern = Pattern.compile(regEx);
            Matcher matcher1 = pattern.matcher(str1);
            Matcher matcher2 = pattern.matcher(str2);
            String result1 = matcher1.replaceAll("").trim();
            String result2 = matcher2.replaceAll("").trim();
            System.out.println(result1);
            System.out.println(result2);
    }

    2、匹配中文

        public static void main(String[] args) {
            String str = "123大家好abc开心快乐ef每一天c";
    
            String reg = "[^u4e00-u9fa5]";
    
            Pattern pat = Pattern.compile(reg);
    
            Matcher mat=pat.matcher(str);
    
            String repickStr = mat.replaceAll("");
    
            System.out.println(repickStr);
        }

    3、匹配英文 

        public static void main(String[] args) {
            String reg = "[^a-zA-Z]";
            String fileName = "TERMINAL_JOURNAL_DATA-20190506100000.txt ";
            String processType = fileName.replaceAll(reg, "");
            System.out.println(processType);//TERMINALJOURNALDATAtxt
        }

    4、提取括号中的内容

        // 提取小括号里的值
        public static Pattern EXTRACT_PARENTHESES_PATTER = Pattern.compile("(?<=\()[^\)]+"); // 这个替换调响应的\( 和\),换成\{, \(, \[ 等可以提取中括号,大括号里面的值,比较通用
        // 提取中括号里的值
        public static Pattern EXTRACT_MIDDLE_BRACKETS_PATTER = Pattern.compile("(\[[^\]]*\])");
    
    
        public static void main(String[] args) {
            String str1 = "12,32(232,434),(大家好)";
            Matcher matcher = EXTRACT_PARENTHESES_PATTER.matcher(str1);
            List<String> parentheses = new ArrayList<>();
            while (matcher.find()){
                parentheses.add(matcher.group());
            }
            System.out.println("圆括号里面的值:" + parentheses.toString());
            //
            str1 = "12,32[232,434],[大家好]";
            matcher = EXTRACT_MIDDLE_BRACKETS_PATTER.matcher(str1);
            List<String> middleBrackets = new ArrayList<>();
            while (matcher.find()){
                middleBrackets.add(matcher.group());
            }
            System.out.println("中括号里面的值:" + parentheses.toString());
        }

     结果:

  • 相关阅读:
    批处理系统中采用的调度算法
    机器学习(周志华西瓜书)参考答案总目录
    机器学习(周志华西瓜书)参考答案总目录
    主题模型LDA及在推荐系统中的应用
    常见的六大聚类算法
    大数据学习笔记·城市计算(1)
    数据预处理之数据规约(Data Reduction)
    高维数据稀疏表示-什么是字典学习(过完备词典)
    dev gridview columns代码管理
    mysql常用命令
  • 原文地址:https://www.cnblogs.com/xhy-shine/p/10516590.html
Copyright © 2011-2022 走看看