`
dyllove98
  • 浏览: 1383211 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:38353
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:78686
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:131835
社区版块
存档分类
最新评论

java中的正则操作总结

 
阅读更多

正则表达式在处理字符串的效率上是相当高的

关于正则表达式的使用,更多的是自己的经验,有兴趣可以参阅相关书籍

这里主要写一下java中的正则操作方法

 

实例1:匹配
import java.util.Scanner;

class Demo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //获取输入
        System.out.print("Please Enter:");
        String str = sc.nextLine();
        check(str);
    }

    private static void check(String str) {
        //匹配第一位是1-9,第二位及以后0-9(个数在4-10之间)
        String regex = "[1-9][0-9]{4,10}";
        
        /*
        //匹配单个字符是大小写的a-z
        String regex = "[a-zA-Z]";
        //匹配数字,注意转义字符
        String regex = "\\d";
        //匹配非数字
        String regex = "\\D";
        */
        
        if(str.matches(regex)) {
            System.out.println("匹配成功");
        } else {
            System.out.println("匹配失败");
        }
    }
}

此处String类中的matches()方法用于匹配

 

实例2:切割
import java.util.Scanner;

class Demo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Please Enter:");
        String str = sc.nextLine();
        split(str);
    }

    private static void split(String str) {
        //匹配一个或多个空格
        String regex = " +";
        
        String[] arr = str.split(regex);
        
        for (String s : arr) {
            System.out.println(s);
        }
    }
}

此处String类中的split()方法用于按正则表达式切割,返回一个String数组

 

实例3:替换
import java.util.Scanner;

class Demo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Please Enter:");
        String str = sc.nextLine();
        replace(str);
    }

    private static void replace(String str) {
        //匹配叠词
        String regex = "(.)\\1+";
        String s = str.replaceAll(regex, "*");
        System.out.println(s);
    }
}

注意replaceAll有两个参数,一个是正则,一个是替换的字符

分享到:
评论

相关推荐

    java中的正则操作方法总结

    关于正则表达式的使用,更多的是自己的经验,有兴趣可以参阅相关书籍。这里主要写一下java中的正则操作方法

    Java基础知识点总结.docx

    二十、 正则表达式:其实是用来操作字符串的一些规则★★★☆ 135 二十一、 设计模式★★★★★ 136 设计模式简介 136 单例设计模式:★★★★★ 156 工厂模式★★★★★ 159 抽象工厂模式★★★★★ 163 建造者模式...

    精通正则表达式~~~

    在正则的世界中漫步... 85 正则表达式的起源... 85 最初印象... 91 正则表达式的注意事项和处理方式... 93 集成式处理... 94 程序式处理和面向对象式处理... 95 查找和替换... 98 其他语言中的查找和替换......

    javascript正则表达式总结

    学习正则重要的是实践操作,不妨举个栗子: 匹配号码:707-827-7019 字符组匹配 [0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] \d匹配任意阿拉伯数字 \D匹配任何非阿拉伯数字 .匹配任意字符 \d\d\d\D\d\d...

    Java基础文档

    Java入门基础知识总结 第1章 、 数据类型和数组 1 第2章 、 运算符和表达式与语句 4 第3章 、 类和对象 5 ...第11章 、 Java与数据库中的操作 21 第12章 、 Java Appplet 21 第13章 、 附录(Eclipse中快捷键) 21

    java知识点总结

    路径:在JSP、SERVLET、普通CLASS文件中如何得到项目物理路径 IO操作:结合路径问题用最基础的IO类编写的文件读写删拷贝等一系列操作 正则表达式:源于官方网的一遍报道,里面有自己添加的一些案例等,只要一页,你...

    Java语言基础下载

    在Java中使用HQL 709 内容总结 712 独立实践 712 第三十七章 Spring介绍 713 学习目标 713 Spring简介 714 IOC控制反转 714 Spring的容器 715 AOP面向切面编程 715 AOP的专业术语 715 Spring事务管理 718 Spring与...

    java面试知识点易错难点总结

    Java的操作原理,面向对象的概念,匿名对象:内部类,,单例设计,重载和覆盖的区别,异常的处理流程,字节流与字符流,内存操作流,正则表达式,web三大框架

    Java后台开发岗面试笔记.docx

    Java后台开发岗面试笔记整理,包含计算机网络、操作系统、集合框架、JVM内存、多线程并发、MySQL、Redis、Spring相关、Java基础知识、项目相关、系统设计问题、Linux相关、正则表达式、设计模式、算法总结等。

    J2SE技术总结-Java学习精华教程-电子书

    本书内容非常全面,涵盖了《Java编程思想》、《Java学习笔记》等书籍所有知识要点,并结合作者自己经验总结而编写,内容丰富程度胜过一切书籍 众所周知,一般书籍为了销售需要,往往很少的知识点,却需要添加大量的...

    基于java中正则操作的方法总结

    本篇文章介绍了,在java中正则操作的方法总结。需要的朋友参考下

    JAVA项目开发全程实录(含电子书和所有源代码)

    4.5.4 编写利用正则表达式验证数据 合法性的方法 156 4.6 主窗体设计 156 4.7 用户登录窗口设计 158 4.8 开台签单工作区设计 164 4.8.1 开台签单工作区功能概述 164 4.8.2 开台签单工作区技术分析 165 4.8.3 开台签...

    PHP3程序设计

    尤其值得注意的是,书中使用了多个“中场”章节,以便在学习过一定知识之后,通过实际例子来对所学的知识进行巩固,这些章节介绍的内容具有很强的实用价值。因此本书不仅对Web编程的入门者,即使对于有一定经验的Web...

    Java学习笔记-个人整理的

    {1.3.1}总结}{23}{subsection.1.3.1} {1.4}数据类型}{23}{section.1.4} {1.4.1}整数与浮点数}{23}{subsection.1.4.1} {1.4.1.1}浮点数原理}{24}{subsubsection.1.4.1.1} {1.4.2}格式化输出浮点数}{24}{...

    Python 核心编程 第二版

    第2部分则提供了各种高级主题来展示可以使用Python做些什么,包括正则表达式、网络编程、网络客户端编程、多线程编程、图形用户界面编程、 Web编程、数据库编程、扩展Python 和一些其他材料。  本书适合Python初学...

    《算法》中文版,Robert Sedgewick,塞奇威克

     3、全新修订的代码:全新的Java实现代码,采用模块化的编程风格,所有代码均可供读者使用  4、与实际应用相结合:在重要的科学、工程和商业应用环境下探讨算法,给出了算法的实际代码,而非同类著作常用的伪代码 ...

    Tcl_TK编程权威指南pdf

    从安全解释器中执行i/o操作 安全基础 安全策略 第20章 safe-tk与浏览器插件 子解释器中的tk 浏览器插件 安全策略与浏览器插件 配置安全策略 第3部分 tk基础 第21章 tk的基本知识 th中的hello,world...

    算法-第4版-完整版

    1.1.1 Java程序的基本结构 4 1.1.2 原始数据类型与表达式 6 1.1.3 语句 8 1.1.4 简便记法 9 1.1.5 数组 10 1.1.6 静态方法 12 1.1.7 API 16 1.1.8 字符串 20 1.1.9 输入输出 21 1.1.10 ...

    算法 第4版-谢路云译-带完整书签

    1.1.1 Java程序的基本结构 4 1.1.2 原始数据类塑与表达式 6 1.1.3 语句 8 1.1.4 简便记法 9 1.1.5 数组 10 1.1.6 静态方法 12 1.1.7 API 16 1.1.8 字符串 20 1.1.9 输入输出 21 1.1.10 二分査找 ...

    算法 第4版 高清中文版

    第4版具体给出了每位程序员应知应会的50个算法,提供了实际代码,而且这些Java代码实现采用了模块化的编程风格,读者可以方便地加以改造。配套网站提供了《算法(第4版)》内容的摘要及更多的代码实现、测试数据、练习...

Global site tag (gtag.js) - Google Analytics