java正则表达式.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java正则表达式

Java 正则表达式正则表达式定义了字符串的模式。正则表达式可以用来有哪些信誉好的足球投注网站、编辑或处理文本。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。Java 正则表达式和 Perl 的是最为相似的。java.util.regex 包主要包括以下三个类:Pattern 类:pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。Matcher 类:Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。PatternSyntaxException:PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。捕获组捕获组是把多个字符当一个单独单元进行处理的方法,它通过对括号内的字符分组来创建。例如,正则表达式 (dog) 创建了单一分组,组里包含d,o,和g。捕获组是通过从左至右计算其开括号来编号。例如,在表达式((A)(B(C))),有四个这样的组:((A)(B(C)))(A)(B(C))(C)可以通过调用 matcher 对象的 groupCount 方法来查看表达式有多少个分组。groupCount 方法返回一个 int 值,表示matcher对象当前有多个捕获组。还有一个特殊的组(group(0)),它总是代表整个表达式。该组不包括在 groupCount 的返回值中。实例下面的例子说明如何从一个给定的字符串中找到数字串:RegexMatches.java 文件代码:importjava.util.regex.Matcher; mportjava.util.regex.Pattern; publicclassRegexMatches{publicstaticvoidmain(Stringargs[]){// 按指定模式在字符串查找Stringline = This order was placed for QT3000! OK?; Stringpattern = (\\D*)(\\d+)(.*); // 创建 Pattern 对象Patternr = Ppile(pattern); // 现在创建 matcher 对象Matcherm = r.matcher(line); if(m.find()){System.out.println(Found value: + m.group(0)); System.out.println(Found value: + m.group(1)); System.out.println(Found value: + m.group(2)); }else{System.out.println(NO MATCH); }}}以上实例编译运行结果如下:Found value:This order was placed for QT3000! OK?Found value:This order was placed for QTFound value:3000正则表达式语法字符说明\将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,n匹配字符n。\n匹配换行符。序列\\匹配\,\(匹配(。^匹配输入字符串开始的位置。如果设置了?RegExp?对象的?Multiline?属性,^ 还会与\n或\r之后的位置匹配。$匹配输入字符串结尾的位置。如果设置了?RegExp?对象的?Multiline?属性,$ 还会与\n或\r之前的位置匹配。*零次或多次匹配前面的字符或子表达式。例如,zo* 匹配z和zoo。* 等效于 {0,}。+一次或多次匹配前面的字符或子表达式。例如,zo+与zo和zoo匹配,但与z不匹配。+ 等效于 {1,}。?零次或一次匹配前面的字符或子表达式。例如,do(es)?匹配do或does中的do。? 等效于 {0,1}。{n}n?是非负整数。正好匹配?n?次。例如,o{2}与Bob中的o不匹配,但与food中的两个o匹配。{n,}n?是非负整数。至少匹配?n?次。例如,o{2,}不匹配Bob中的o,而匹配foooood中的所有 o。o{1,}等效于o+。o{0,}等效于o*。{n,m}M?和?n?是非负整数,其中?n?=?m。匹配至少?n?次,至多?m?次。例如,o{1,3}匹配fooooood中的头三个 o。o{0,1} 等效于 o?。注意:您不能将空格插入逗号和数字之间。?当此字符紧随任何其他限

文档评论(0)

tianma2015 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档