- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java正则表达式详解
分类:?J2SE2011-11-28 14:15?52人阅读?评论(0)?收藏?举报
第一篇:什么是正则表达式?
在学习JAVA的正则表达式之前,先介绍一下什么是正则表达式:
1、正则表达式是一种强大而灵活的文本处理工具;2、在技术上,正则表达式实现了对字符串的操作,在先前,这些任务一般都指派给了JAVA中的String、StringBuffer和StringTOkenizer这些类;3、正则表达式一般和I/O联合使用;4、正则表达式可以让我们以编程方式指定那些可以再输入字符串中发现的复杂的文本模式,一旦我们发现了这些模式,那么就可以按照任何我们所希望的方式进行处理了;5、正则表达式提供了一种紧凑的、动态的语言,能够以一种完全通用的方式来解决各种字符串处理(例如:匹配、选择、编辑及验证)问题;
第二篇:如何创建正则表达式?
好了,看到这里我想大家对正则表达式应该已经有了一定的了解了吧,下面我来介绍一下如何创建正则表达式:
要学习正则表达式就必须了解正则表达式的构造集,只有了解了构造集,掌握了模式匹配的原则和方法,你才能写出适合你需要的正则表达式,打个比方,要构造一个房屋模型,就要使用这一个个的积木,让他们以适当的方式进行拼合,构造集中的匹配符号就好像是搭建房屋模型的一个个小积木,用于创建正则表达式的完全构造列表可以在javadocs的Pattern类中找到,为了方便查询,我在这里也把这些构造集列了出来,以供参考(注:摘自JDK 5.0 Documentation)
——————————————————————————————————————————————————————资料参考:正则表达式的构造摘要???1)字符?x 字符 x?\\ 反斜线字符?\0n 带有八进制值 0 的字符 n (0 = n= 7)?\0nn 带有八进制值 0 的字符 nn (0 = n= 7)?\0mnn 带有八进制值 0 的字符 mnn(0 = m = 3、0 = n = 7)?\xhh 带有十六进制值 0x 的字符 hh?\uhhhh 带有十六进制值 0x 的字符 hhhh?\t 制表符 (\u0009)?\n 新行(换行)符 (\u000A)\r 回车符 (\u000D)?\f 换页符 (\u000C)\a 报警 (bell) 符 (\u0007)?\e 转义符 (\u001B)?\cx 对应于 x 的控制符???2)字符类?[abc] a、b 或 c(简单类)?[^abc] 任何字符,除了 a、b 或 c(否定)?[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)?[a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](并集)?[a-z[def]] d、e 或 f(交集)?[a-z[^bc]] a 到 z,除了 b和 c:[ad-z](减去)?[a-z[^m-p]] a 到 z,而非m 到 p:[a-lq-z](减去)???3)预定义字符类?. 任何字符(与行结束符可能匹配也可能不匹配)?\d 数字:[0-9]?\D 非数字: [^0-9]?\s 空白字符:[ \t\n\x0B\f\r]?\S 非空白字符:[^\s]?\w 单词字符:[a-zA-Z_0-9]?\W 非单词字符:[^\w]???4)POSIX 字符类(仅 US-ASCII)?\p{Lower} 小写字母字符:[a-z]?\p{Upper} 大写字母字符:[A-Z]?\p{ASCII} 所有 ASCII:[\x00-\x7F]?\p{Alpha} 字母字符:[\p{Lower}\p{Upper}]?\p{Digit} 十进制数字:[0-9]?\p{Alnum} 字母数字字符:[\p{Alpha}\p{Digit}]?\p{Punct} 标点符号:!#$%()*+,-./:;=?@[\]^_`{|}~\p{Graph} 可见字符:[\p{Alnum}\p{Punct}]?\p{Print} 可打印字符:[\p{Graph}\x20]?\p{Blank} 空格或制表符:[ \t]?\p{Cntrl} 控制字符:[\x00-\x1F\x7F]\p{XDigit} 十六进制数字:[0-9a-fA-F]?\p{Space} 空白字符:[ \t\n\x0B\f\r]???5)java.lang.Character 类(简单的java 字符类型)?\p{javaLowerCase} 等效于 java.lang.Character.isLowerCase()\p{javaUpperCase} 等效于 java.lang.Cha
文档评论(0)