- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
正则表达式简化模式匹配的代码
java正则表达式; regular expression 日期:2005-7-11 15:58:39 人气:0 ????[大中小] Java 101
正则表达式简化模式匹配的代码
探索在文本处理场合下涉及模式匹配中正则表达式的优雅之处。
概要
文本处理经常涉及的根据一个pattern的匹配。尽管java的character和assorted 的String类提供了low-level的pattern-matching支持,这种支持一般带来了复杂的代码。为了帮助你书写简单的pattern-matching代码,java提供了regular expression。在介绍给你术语和java.util.regex包之后,Jeff Friesen explores 了许多那个包的Pattern类支持的正则表达式结构。然后他examines 了Pattern的方法和附加的java.util.regex 类。作为结束,他提供了一个正则表达式的实践应用。
为察看术语列表,提示与警告,新的homework,上个月homework的回答,这篇文章的相关材料,请访问study guide. (6,000 words; February 7, 2003)
By Jeff Friesen ,Translated By humx
文本处理经常的要求依据特定pattern匹配的代码。它能让文本检索,email header验证,从普通文本的自定义文本的创建(例如,用Dear Mr. Smith 替代 Dear Customer),等等成为可能。Java通过character和assorted string类支持pattern matching。由于low-level的支持一般带来了复杂的pattern-matching代码,java同时提供了regular expression来简代码。
Regular expressions经常让新手迷惑。然而, 这篇文章驱散了大部分混淆。在介绍了regular expression术语,java.util.regex 包中的类, 和一个regular expression constructs的示例程序之后, 我explore了许多Pattern类支持的regular expression constructs。我也examine了组成Pattern 和java.util.regex 包中其它类的方法。一个practical 的正则表达式的应用程序结束了我的讨论。
Note
Regular expressions的漫长历史开始于计算机科学理论领域自动控制原理和formal 语言理论。它的历史延续到Unix和其它的操作系统,在那里正则表达式被经常用作在Unix和Unix-like的工具中:像awk(一个由其创作者,Aho, Weinberger, and Kernighan,命名,能够进行文本分析处理的编程语言), emacs (一个开发工具),和grep (一个在一个或多个文件中匹配正则表达式,为了全局地正则表达式打印的工具。
什么是正则表达式? A regular expression,也被known as regex or regexp,是一个描述了一个字符串集合的pattern(template)。这个pattern决定了什么样的字符串属于这个集合,它由文本字符和元字符(metacharacters,由有特殊的而不是字符含义的字符)组成。为了识别匹配的检索文本的过程—字符串满足一个正则表达式—称作模式匹配(pattern matching)。
Javas java.util.regex 包通过Pattern,Matcher类和PatternSyntaxException异常支持pattern matching:
Pattern 对象,被known as patterns,是编译的正则表达式。
Matcher 对象,或者matchers,在,实现了java.lang.CharSequence接口并作为文本source的字符序列中定位解释matchers的引擎。
PatternSyntaxException 对象描述非法的regex patterns。
Listing 1 介绍这些类:
Listing 1. RegexDemo.java
// RegexDemo.javaimport java.util.regex.*;
class RegexDemo {?? public static void main (String [] args) {??????if (args.length != 2) ??????????System.err.println (j
您可能关注的文档
- 欧洲战争起因变化趋势研究.doc
- 欧洲报废电子电气产品回收体系及其相互间的比较(大型跨国公司设计指引).doc
- 欧洲文艺复兴时期的社会特点研究.doc
- 欧洲旅游游客注意事项.doc
- 欧洲污水处理技术.doc
- 欧洲流行的测试题.doc
- 欧洲皇室及其资料.doc
- 欧洲经济问题背后的制度因素.doc
- 欧洲药典蛋白含量测定方法.doc
- 欧洲药品生产质量管理规范GMP(中文).doc
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
文档评论(0)