`
caiying0504
  • 浏览: 341649 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java正则表达式使用

阅读更多
package org.ankang06.admin;

import java.io.File;
import java.io.FileWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

public class CopyOfMainRun {

  public void test(){
    Pattern p=null; //正则表达式 

    Matcher m=null; //操作的字符串 

    boolean b; 

    String s=null; 

    StringBuffer sb=null; 

    int i=0; 

    //字符串匹配,这是不符合的 

     p = Pattern.compile("a*b"); //正则表达式表示首字母是a,中间是任意字符,结尾以b结束

     m = p.matcher("baaaaab"); 

     b = m.matches(); 

    System.out.println(b+"<br>;"); //输出:false

   //字符串匹配,这是符合的 

     p = Pattern.compile("a*b"); 

     m = p.matcher("aaaaab"); 

     b = m.matches(); 

     System.out.println(b+"<br>;"); //输出:ture

   //字符串替换 

     p = Pattern.compile("ab"); 

     m = p.matcher("aaaaab"); 

     s = m.replaceAll("d");    //找到字符串中所有的ad然后替换成d

     System.out.println(s+"<br>;"); //输出:aaaad
     
     

     p = Pattern.compile("a*b"); 

     m = p.matcher("aaaaab"); 

     s = m.replaceAll("d");   

     System.out.println(s+"<br>;"); //输出:d

     p = Pattern.compile("a*b"); 

     m = p.matcher("caaaaab"); 

     s = m.replaceAll("d");   

     System.out.println(s+"<br>;"); //输出:cd

   //字符串查找 

    p = Pattern.compile("cat"); 

    m = p.matcher("one cat two cats in the yard"); 

    sb = new StringBuffer(); 

    while (m.find()) { 

        m.appendReplacement(sb, "dog"); //找到与cat相同的字符用dog代替

        i++; 

    } 

    m.appendTail(sb); //将整个字符串中的cat替换成dog

    System.out.println(sb.toString()+"<br>;"); 

    System.out.println(i+"<br>;"); 

    i=0;  

    p = Pattern.compile("cat"); 

    m = p.matcher("one cat two ca tsi nthe yard"); 

     sb = new StringBuffer(); 

    while (m.find()) { 

        m.appendReplacement(sb, "dog"); 

        i++; 

    } 

    m.appendTail(sb); 

    System.out.println(sb.toString()+"<br>;"); 

    System.out.println(i+"<br>;"); 

     

     

    p = Pattern.compile("cat"); 

    m = p.matcher("one cat two cats in the yard"); 

    p=m.pattern(); 

    m = p.matcher("bacatab"); 

    b = m.matches(); 

    System.out.println(b+"<br>;");  

    s = m.replaceAll("dog");  

    System.out.println(s+"<br>;");  

     

    i=0; 

    p = Pattern.compile("(fds){2,}"); //匹配两个连续的fds

    m = p.matcher("dsa da fdsfds aaafdsafds aaf"); 

     sb = new StringBuffer(); 

    while (m.find()) { 

        m.appendReplacement(sb, "dog"); 

        i++; 

    } 

    m.appendTail(sb); 

    System.out.println(sb.toString()+"<br>;"); 

    System.out.println(i+"<br>;"); 

     

     p = Pattern.compile("cat"); 

     m = p.matcher("one cat two cats in the yard"); 

     sb = new StringBuffer(); 

     while (m.find()) { 

        m.appendReplacement(sb, "<font color=\"red\">;cat</font>;"); 

     } 

   m.appendTail(sb); 

   System.out.println(sb.toString()+"<br>;"); 

   String aa=sb.toString(); 

   System.out.println(aa+"<br>;"); 

   //字符串分割 

     p = Pattern.compile("a+"); //匹配连续的a字符串

     String[] a=p.split("caaaaaat"); //根据正则表达式将字符串分割

     for(i=0;i<a.length;i++) 

     { 

     System.out.println(a[i]+"<br>;");//输出:c和t 

     } 

     p = Pattern.compile("a+"); 

     a=p.split("c aa aaaa t",0); 

     for(i=0;i<a.length;i++) 

     { 

     System.out.println(a[i]+"<br>;");// 输出"c "," "," t". 

     } 

     p = Pattern.compile(" +"); 

     a=p.split("c aa    aaaa t",0); 

     for(i=0;i<a.length;i++) 

     { 

     System.out.println(a+"<br>;"); 

     } 

     p = Pattern.compile("\\+"); 

     a=p.split("dsafasdfdsafsda+dsagfasdfa+sdafds"); 

     System.out.println(a.length+"<br>;"); 

     for(i=0;i<a.length;i++) 

     { 

     System.out.println(a+"<br>;"); 

     } 

  }
  public static void main(String[] args) {
    Pattern p=null; //正则表达式 

    Matcher m=null; //操作的字符串 

    boolean b; 

    String s=null; 

    StringBuffer sb=null; 

    int i=0; 

    
    //字符串分割 
    

    p = Pattern.compile(" +"); 
    String[] a=p.split("caaaaaat"); 

    a=p.split("c aa    aaaa t",0); 

    for(i=0;i<a.length;i++) 

    { 

    System.out.println(a[i]+"<br>;"); 

    }


   
  }

}

分享到:
评论

相关推荐

    java正则表达式使用例子

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许我们通过模式匹配来查找、替换或分割文本。在Android开发中,正则表达式尤其重要,因为它们可以帮助我们验证用户输入、处理文本数据或者进行复杂的...

    java正则表达式使用.docx

    java正则表达式使用.docx 资源

    java正则表达式.zip

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它基于模式匹配的概念,能够高效地进行文本搜索、替换和解析。在Java中,正则表达式主要通过`java.util.regex`包来实现,提供了Pattern和Matcher两个核心...

    Java使用正则表达式提取XML节点内容的方法示例

    为了帮助开发者更好地掌握Java正则表达式技术,我们提供了一系列的Java正则表达式技巧大全,包括《Java正则表达式技巧大全》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧...

    java正则表达式验证IP地址

    Java正则表达式验证IP地址是指使用Java语言中的正则表达式来验证IP地址是否符合标准。IP地址是指在网络通信中用来标识设备的地址,它是一种逻辑地址,通过它可以找到网络中的设备。在Java中,可以使用正则表达式来...

    java正则表达式匹配工具

    Java正则表达式匹配工具是IT领域中一种强大的文本处理工具,它利用正则表达式(Regular Expression)的规则来查找、替换或者提取文本中的特定模式。正则表达式是一种特殊的字符序列,能够帮助程序员或者用户高效地...

    Java正则表达式使用

    例如,以下代码展示了如何在Java中使用正则表达式: ```java import java.util.regex.*; public class RegexExample { public static void main(String[] args) { String input = "This is a test string"; ...

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

    本篇将围绕“使用Java正则表达式分析处理日志”这一主题,探讨如何利用Java的正则表达式功能来提取、过滤和操作日志数据。 首先,我们需要理解正则表达式的基本概念。正则表达式(Regular Expression)是一种模式...

    JAVA正则表达式大全

    以下是对这些文档标题所涉及的Java正则表达式知识点的详细解释: 1. **正则表达式之道** 这个主题可能涵盖了正则表达式的基础概念,包括元字符、字符类、量词和分组。元字符如`.`代表任意字符,`^`表示行首,`$`...

    Java正则表达式.ppt

    使用Java正则表达式的好处在于它能显著提高编程效率,例如验证电子邮件地址这样的任务,传统方法可能需要大量的代码,而使用正则表达式则可以大大简化。然而,这也需要程序员学习和掌握正则表达式相关的知识。 在...

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

    Java正则表达式是Java语言中用于处理字符串的强大工具,它允许程序员进行复杂的字符串匹配、查找和替换操作。正则表达式(Regular Expression)是一种模式匹配语言,通过特定的语法来描述字符串的模式,用于在文本中...

    java 正则表达式应用jar包 regex-smart.jar

    Java正则表达式是编程语言Java中的一个强大工具,它用于模式匹配、数据验证和文本检索替换。在Java中,正则表达式是通过java.util.regex包提供的接口和类来实现的。`regex-smart.jar`这个库显然是为了简化开发者在...

    java正则表达式实例教程

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或分割文本。本教程将深入讲解Java中的正则表达式,并提供丰富的实例来帮助开发者理解和应用这些概念。 1. 正则...

    使用Java正则表达式实现一个简单的身份证号码验证

    ### 使用Java正则表达式实现一个简单的身份证号码验证 #### 一、背景介绍 身份证号码是中国公民的身份标识,由15位或18位数字组成(早期为15位,后改为18位)。其中,第18位是校验码,可能是数字0~9或者大写字母X。...

    Java 正则表达式 图片版

    Java正则表达式 Java 正则表达式 图片版 携带方便,查阅方便!~

    Java正则表达式使用详解(2015版).pdf

    本文档详细介绍了2015年时Java正则表达式的基础知识和用法。 1.1 句点符号(`.`) 句点符号在正则表达式中代表任意单个字符,包括空格、制表符和换行符。例如,正则表达式`t.n`会匹配以"t"开始,以"n"结束的所有三...

    常用java正则表达式

    ### 常用Java正则表达式知识点 #### 一、引言 正则表达式是一种强大的工具,用于处理文本并查找模式。多种编程语言,包括Perl、PHP、Python、JavaScript以及Java等均内置了对正则表达式的支持。本文将详细介绍Java...

    Java正则表达式测试工具

    Java正则表达式测试工具是面向开发者和爱好者的一款实用程序,它可以帮助用户验证和调试他们的正则表达式。在Java编程环境中,正则表达式是一个强大的字符串处理工具,广泛用于数据验证、文本搜索和替换等任务。这款...

    JAVA正则表达式的应用

    JAVA正则表达式应用:任意输入一串字符串 如何输入exit退出程序;从输入的字符串中判断是否包含手机号码 正则表达式可以使用&quot; +86| 86 1 d{10}&quot; 如果包含请将其在控制台打印出来 否则输出不包含字符串 ...

    Java 正则表达式库

    Java正则表达式库是Java开发中不可或缺的一部分,它为开发者提供了一种强大的文本匹配工具。在Java中,正则表达式(Regular Expression)是一种模式匹配语言,用于处理字符串操作,如查找、替换或提取特定模式的数据...

Global site tag (gtag.js) - Google Analytics