`

对于正则表达式的应用总结

阅读更多

        最近做一项目  要求特定字符串的替换,以前做时用的是 split() 分割,然后循环 加上的,但是后来发现这样对数据的要求度比较高,不能存在 分割字符,所以才用了正则,案例如下:

         String str1="1973.07--1977.09  某@某省某$某县某某镇%小学#教师。1977.09--1979.09  某某省&某某县某某&镇初中教师。1988.11--1993  某某省某某市委宣传部干事、副科级、科长(1987.09--今 在某某大学某某系某某专业学习)。";要替换此字符串中的 日期格式i    为1973年07月 

 

 

 

         Matcher matcher = Pattern.compile("\\d{4}.\\d{1,2}").matcher(str1); //用正则匹配日期格式 1973.08 或1973.8

 

         StringBuffer sbr = new StringBuffer(); 

 

          while(matcher.find()){                     //循环查找匹配值  

 

                String dateTime=matcher.group(0);                //用matcher.group(0) 取到匹配值  然后做处理

 

                if(dateTime!=null&&!dateTime.equals("")){

 

                       dateTime=dateTime.substring(0,4)+"年";

 

                   }

                matcher.appendReplacement(sbr, dateTime); //将处理完成后的匹配值用appendReplacement(sbr, dateTime); 方法替换原有的

 

             }

            matcher.appendTail(sbr);                 //添加最后一次匹配值              

                 

          str1=sbr.toString().replaceAll("--","至").replaceAll("<", "(").replaceAll(">",")").replaceAll(" ", "").replaceAll(" ","").replaceAll("[&$#@%]", "");

 

 System.out.println(str1);

 

 

 

 

行了  大功告成!!! 至于正则表达式的一些规则如下:

1.匹配字符串用 (str)

2.匹配次数      {m,n}

3.匹配范围      [a-z]

4.匹配情况      x|y

 

需要记匹配项

   \b  空字符边界

   \B  非空的字符边界

   \d   数字

   \D   非数字

   \s   空字符串

   \S   非空字符串

具体参考:http://baike.baidu.com/view/94238.htm

3
2
分享到:
评论

相关推荐

    Java正则表达式应用总结

    对于特殊字符如回车`\r`,可以直接写入,因为它们在正则表达式中没有特殊含义。 总之,Java正则表达式提供了强大的文本处理功能,结合`Pattern`和`Matcher`类,开发者可以高效地处理字符串,进行搜索、替换、分割等...

    正则表达式应用总结

    ### 正则表达式应用总结 #### 一、概述 正则表达式是计算机科学领域内一种用于描述字符串模式的强大工具,在多种编程语言中均有应用。对于Java而言,正则表达式更是处理字符串和文本数据不可或缺的一部分。Java...

    常用正则表达式大全.txt

    根据提供的文件信息,我们可以整理出一系列与正则表达式相关的...以上内容概括了从文件中提取出来的正则表达式知识点,这些知识点覆盖了正则表达式的多个应用场景,对于从事软件开发、数据分析等领域的人来说非常实用。

    精通正则表达式(第三版)简体中文版

    ### 正则表达式基础知识与...对于想要深入学习并掌握正则表达式技术的读者来说,本书无疑是一个非常有价值的参考资料。通过阅读本书,读者不仅可以学到理论知识,还能通过实践案例加深理解,提高解决实际问题的能力。

    正则表达式不包涵特殊字符(除了 指定字符 以外)

    在探讨如何利用正则表达式来判断一个字符串除指定字符外不包含其他特殊字符之前,我们首先需要了解正则表达式的基本概念以及本...对于开发者而言,熟练掌握正则表达式的编写技巧对于提高代码质量和效率具有重要意义。

    第11.25节 Python正则表达式编译re.compile及正则对象使用.rar

    本节将深入探讨`re.compile()`函数及其在创建正则表达式对象中的应用。`re.compile()`是Python标准库`re`模块中的一员,它允许我们将正则表达式模式编译为可重用的对象,从而提高执行效率。 ### 正则表达式基础 ...

    日期正则表达式(很实用)

    日期格式验证是正则表达式常见应用场景之一,尤其是在表单验证、数据清洗等领域。本文将详细介绍几种常用的日期正则表达式及其原理。 #### 二、简单日期格式验证 ##### 1. YYYY/MM/DD 格式的日期验证 最基础的...

    精通正则表达式中文版英文版_中文版为扫描版

    总结来说,无论你是新手还是资深开发者,"精通正则表达式"都是一个宝贵的资源,它可以帮助你掌握这个强大的工具,从而更好地处理和操纵文本数据。无论是选择中文扫描版还是英文电子版,都能让你在正则表达式的学习...

    正则表达式判断密码强度

    总结来说,正则表达式是评估和验证密码强度的有效工具,但需要结合其他安全措施,以确保密码策略的全面性和安全性。同时,对密码周期的管理也是保护账户安全的重要一环,这通常通过后台管理系统来实现。

    正则表达式(日期校验)

    ### 正则表达式在日期校验中的应用 #### 一、引言 在软件开发过程中,日期格式的校验是非常常见的需求之一。利用正则表达式进行日期格式的校验,不仅可以提高代码的可读性和简洁性,还能有效地确保输入数据的准确...

    Oracle正则表达式详解(用法+实例)

    #### 四、正则表达式应用实例 下面通过具体的例子来演示如何使用这些正则表达式函数: - **查询以 "1" 开头且以 "60" 结尾的长度为 7 的记录**: ```sql SELECT * FROM fzq WHERE REGEXP_LIKE(value, '^1.{5}60$'...

    IP地址的正则表达式

    正则表达式在实际应用中非常广泛,特别是在编程、数据清洗和网络开发等领域。例如,在编写代码时,可以通过正则表达式来验证用户输入的IP地址是否有效;在网络设备配置中,可以利用正则表达式来过滤和管理大量的IP...

    正则表达式学习心得 v1.0

    各种语言中的正则表达式应用 ##### 2.1. Python 中的正则表达式 Python 提供了一个名为`re`的内置模块来支持正则表达式的操作。通过这个模块,可以轻松地实现字符串的搜索、替换等功能。例如: - **查找字符串**...

    报表工具FineReport正则表达式定义规则

    ### 报表工具FineReport...熟练掌握这些基本的正则表达式语法及其应用场景对于报表开发人员来说是非常必要的。此外,随着技术的发展,正则表达式的功能也在不断扩展和完善,因此持续学习新的特性和技巧也是十分重要的。

    正则表达式速查 正则表达式举例 正则表达式学习

    #### 三、正则表达式应用实例 为了更好地理解这些规则,下面给出一些实际应用场景的例子: 1. **邮箱验证**:使用正则表达式验证用户输入的邮箱地址是否符合标准格式。 - 示例: - `'^[a-zA-Z0-9._%+-]+@[a-zA-Z0...

    正则表达式.docx

    正则表达式有很多实际应用,例如: * 字符串验证:使用正则表达式来验证字符串是否符合某个规则。 * 字符串查找:使用正则表达式来查找字符串中符合某个规则的子字符串。 * 字符串替换:使用正则表达式来替换字符串...

    正则表达式在程序开发中的应用

    ### 正则表达式在程序开发中的应用 正则表达式是编程中一种非常强大的工具,用于处理字符串数据。它能够帮助开发者实现对文本的精确查找、...因此,掌握正则表达式的使用对于每一位开发者来说都是十分重要的技能之一。

Global site tag (gtag.js) - Google Analytics