`
haiyupeter
  • 浏览: 427416 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

正则表达式的四种基本用法

    博客分类:
  • Java
阅读更多

正则表达式在字符串处理上有着强大的功能,sun在jdk1.4加入了对它的支持 
(文档里有一些错,但基本的功能或者说是想法也就是这样用了。大家注意修改一下下就可以用的了)
 
  下面简单的说下它的4种常用功能:
  
  查询:
  
  以下是代码片段:
  String str="abc efg ABC"; 

  String regEx="a|f"; //表示a或f 

  Pattern p=Pattern.compile(regEx); 

  Matcher m=p.matcher(str); 

  boolean rs=m.find(); 
  
  如果str中有regEx,那么rs为true,否则为flase。如果想在查找时忽略大小写,则可以写成Pattern p=Pattern.compile(regEx,Pattern.CASE_INSENSITIVE);
  
  提取:
  以下是代码片段:
  String regEx=".+\(.+)$"; 

  String str="c:\dir1\dir2\name.txt"; 

  Pattern p=Pattern.compile(regEx); 

  Matcher m=p.matcher(str); 

  boolean rs=m.find(); 

  for(int i=1;i<=m.groupCount();i++){ 

  System.out.println(m.group(i)); 

  } 
  
  以上的执行结果为name.txt,提取的字符串储存在m.group(i)中,其中i最大值为m.groupCount();
  
  分割:
  
  以下是代码片段:

  String regEx="::"; 

  Pattern p=Pattern.compile(regEx); 

  String[] r=p.split("xd::abc::cde"); 

  执行后,r就是{"xd","abc","cde"},其实分割时还有跟简单的方法: 

  String str="xd::abc::cde"; 

  String[] r=str.split("::"); 
  
  替换(删除):
  
  以下是代码片段:

  String regEx="a+"; //表示一个或多个a 

  Pattern p=Pattern.compile(regEx); 

  Matcher m=p.matcher("aaabbced a ccdeaa"); 

  String s=m.replaceAll("A"); 
  
  结果为"Abbced A ccdeA"
  
  如果写成空串,既可达到删除的功能,比如:
  
  String s=m.replaceAll("");
  
  结果为"bbced ccde"
  
  附:
  
  \D 等於 [^0-9] 非数字 
  \s 等於 [ \t\n\x0B\f ] 空白字元 
  \S 等於 [^ \t\n\x0B\f ] 非空白字元 
  \w 等於 [a-zA-Z_0-9] 数字或是英文字 
  \W 等於 [^a-zA-Z_0-9] 非数字与英文字 
  
  ^ 表示每行的开头
  $ 表示每行的结尾

分享到:
评论

相关推荐

    正则表达式转换工具

    1. **正则表达式基本概念** - 元字符:如`.`, `*`, `+`, `?`, `{}`, `[]`, `\`, `^`, `$`等,它们具有特殊含义,在正则表达式中用来定义模式。 - 字符类:例如`[abc]`,匹配其中任意一个字符。 - 量词:`*`, `+`,...

    vb正则表达式实例(正则表达式测试程序)

    下面将详细探讨正则表达式的基本概念、在VB.NET中的应用以及如何使用它们进行文本匹配。 1. 正则表达式基础 - **模式匹配**:正则表达式是一种特殊的字符序列,用于定义字符串的搜索模式。 - **元字符**:如 `.`...

    正则表达式(Deelx版)|正则表达式(Deelx版)支持库

    1. **正则表达式基本概念** - **模式匹配**:正则表达式的核心在于模式,它是由特殊字符和普通字符组成的字符串,用于描述一系列可能的输入。 - **元字符**:如`^`(行首)、`$`(行尾)、`.`(任意字符)、`*`...

    正则表达式测试工具C#版(src)

    正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索。在C#编程语言中,正则表达式被广泛应用于数据验证、文本提取、格式转换等多个场景。本项目提供了一个C#编写的正则表达式测试工具,包含完整...

    使用Java正则表达式分析处理日志

    1. **编译正则表达式**:使用`Pattern.compile()`方法创建一个`Pattern`对象,例如`Pattern pattern = Pattern.compile("你的正则表达式")`。 2. **创建Matcher对象**:使用`Pattern`对象的`matcher()`方法,传入...

    正则表达式调试工具

    综上所述,"正则表达式调试工具V3.0 绿色免费版"是一款实用的开发辅助工具,不仅提供了基本的正则表达式测试功能,还通过经典例程和跨平台特性,为开发者提供了便利的学习和调试环境。使用这款工具,开发者可以更好...

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

    ### Oracle正则表达式详解(用法+实例) #### 一、正则表达式简介 正则表达式是一种用于匹配字符串中字符组合的工具。它由一个或多个字符及特殊的字符元组成,能够帮助我们执行复杂的字符串搜索和替换任务。在...

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

    《精通正则表达式(第三版)简体中文版》是一本全面介绍正则表达式技术的书籍,不仅覆盖了基本语法和高级特性,还详细讲解了在不同编程环境下的具体应用方法。对于想要深入学习并掌握正则表达式技术的读者来说,本书...

    强大的正则表达式生成工具 C#版

    正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索替换操作。C#作为.NET框架的一部分,提供了全面支持正则表达式的类库,使得开发人员能够方便地利用正则表达式进行复杂的文本处理任务。在这个...

    c++写的正则表达式验证工具

    在IT行业中,正则表达式(Regular Expression)是一种强大的文本处理工具,用于匹配、查找、替换等操作。C++作为一种通用编程语言,虽然标准库中没有内置正则表达式支持,但通过第三方库如Boost,我们可以很方便地在...

    通过正则表达式生成数据

    正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配、查找、替换等操作,涉及字符串的模式匹配。在本主题中,我们将深入探讨如何使用正则表达式来生成满足特定条件的随机数据。这在...

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

    在Python编程语言中,正则表达式是一种强大的文本处理工具,用于匹配、查找、替换等操作。本节将深入探讨`re.compile()`函数及其在创建正则表达式对象中的应用。`re.compile()`是Python标准库`re`模块中的一员,它...

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

    本文介绍了从简单日期格式到包含闰年判断的复杂日期格式的正则表达式设计方法。通过对这些表达式的理解,可以更好地应用于实际开发中,提高代码的健壮性和准确性。 通过以上内容的学习,我们可以看出,虽然正则...

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

    在探讨如何利用正则表达式来判断一个字符串除指定字符外不包含其他特殊字符之前,我们首先需要了解正则表达式的基本概念以及本场景中的具体需求。 ### 正则表达式简介 正则表达式是一种强大的文本处理工具,能够...

    易语言正则表达式匹配中文

    本文将深入探讨易语言中的正则表达式匹配中文的原理、方法以及应用。 正则表达式(Regular Expression)是一种模式匹配的语言,用于描述一种字符串的集合。在易语言中,我们可以通过内置的字符串函数来实现正则...

    易语言正则表达式取网址和名称

    在IT行业中,正则表达式(Regular Expression)是一种强大的文本处理工具,用于匹配、查找、替换等操作。在本案例中,“易语言正则表达式取网址和名称”指的是使用易语言这一编程环境,结合正则表达式技术来从文本中...

    Java正则表达式 Java 正则表达式

    正则表达式(Regular Expression)是一种模式匹配语言,通过特定的语法来描述字符串的模式,用于在文本中寻找符合该模式的字符串。 1. **基本概念与用途** - 正则表达式主要用途包括字符串匹配、查找和替换。 - ...

    正则表达式.doc 正则表达式

    总的来说,正则表达式是程序员处理文本的强大工具,理解并掌握其语法和使用方法对于提高文本处理能力至关重要。通过不断实践和学习,你可以利用正则表达式解决各种文本处理问题,无论是在Java还是其他支持正则表达式...

    正则表达式(regex)C语言源码,超强查找/替换算法

    这个文本文件可能是关于如何在C语言中使用正则表达式的详细指南,包含了正则表达式的基本语法、库的使用方法、示例代码等。阅读此文件可以帮助开发者快速上手,理解如何在实际项目中应用Henry Spencer的regex ...

    正则表达式(日期校验)

    本文将详细介绍如何使用正则表达式来验证日期格式,并通过两个具体的示例来展示其用法。 #### 二、基础知识回顾 在深入了解具体实现之前,我们先简要回顾一下正则表达式的相关概念以及JavaScript中的日期对象。 #...

Global site tag (gtag.js) - Google Analytics