ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java 正则表达式的使用

2019-05-29 17:43:04  阅读:197  来源: 互联网

标签:Java 正则表达式 Pattern Matcher System value 使用 println Found


Java 正则表达式的使用

java.util.regex 包主要包括以下三个类:

 

Pattern 类:

 

  pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。

 

Matcher 类:

 

  Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。

 

PatternSyntaxException:

 

  PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。

  以下实例中使用了正则表达式.*runoob.*用于查找字符串中是否包含了runoob子串:

  

 1 package cc.bcy;
 2 
 3 import java.util.regex.*;
 4 
 5 public class RegexExample 
 6 {
 7     public static void main(String[] args) 
 8     {
 9         String line="This order was placed for QT3000! OK?";
10         String pattern="(\\D*)(\\d+)(.*)";
11         //创建Pattern对象
12         Pattern p=Pattern.compile(pattern);
13         //创建Matcher对象
14         Matcher m=p.matcher(line);
15         if(m.find())
16         {
17             System.out.println("Found value: "+m.group(0));
18             System.out.println("Found value: "+m.group(1));
19             System.out.println("Found value: "+m.group(2));
20             System.out.println("Found value: "+m.group(3));
21         }
22         else
23         {
24             System.out.println("No Match!");
25         }
26         int n=m.groupCount();
27         System.out.println("一共有"+n+"个捕获组");
28     }
29 }
30 /*
31 Found value: This order was placed for QT3000! OK?
32 Found value: This order was placed for QT
33 Found value: 3000
34 Found value: ! OK?
35 一共有3个捕获组
36 */

 

标签:Java,正则表达式,Pattern,Matcher,System,value,使用,println,Found
来源: https://www.cnblogs.com/baichunyu/p/10945167.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有