Java中的正则表达式与模式匹配研究
要正则表达式是代表具有特殊意义字符的字符串。在信息时代,我们从海量数据中寻找特定的信息时,正则表达摘
式起到了至关重要的作用。正则表达式仿佛一个模板,将某个字符模式与所搜索的字符串进行匹配。在编写程序时正则表
达式也起着很重要的作用,应用广泛。本文主要研究java中正则表达式的使用,及模式匹配。
关键词正则表达式;模式匹配;Pattern类;Matcher类
中图分类号文献标识码A文章编号TP301.21674-6708:2011 :48-0180-02正则表达式仿佛一个模板,将某个字符模式与所搜索的字符配该模式、从指定索引start处开始的输入序列的下一个子序列。
串进行匹配。在编写程序时正则表达式也起着很重要的作用,应: ;举例
7 :Pattern p=Pattern.compile: ‚\\dabcd\\d?
用广泛。本文主要研究java中正则表达式的使用,及模式匹配。 Matcher m= p.matcher: ‚ 12abcd3fcsd: ; If:m.find
:3: : {System.out.print: ‚ok?: ; } 1 java中的Pattern类//程序结果没有输出‚o‚k 。将从字符?b?处查找匹配的子序列。 1. 1重要方法3:public intstart()
使用模式对象调用该方法,返回以前匹配的初始索引。 1:static Patterncompile:String regex:该静态方法通过使用类
4:public int end()名调用,返回一个Pattern类型的对象,
使用模式对象调用该方法,返回最后匹配字符之后的偏移量。并且将给定的正则表达式regex编译到模式中。
举例1 :Pattern p ; p=Pattern.compile: ‚ \\dabcd\\d?: ;5:public Stringgroup()
2:Matcher matcher:CharSequence input:使用模式对象调用该方法,返回由以前匹配操作所匹配的输
入子序列。 使用Pattern类的对象调用该方法,返回一个Matcher类型的
举例8 :Pattern p=Pattern.compile: ‚ \\dabcd\\d?: ;对象,其主要作用是用在input中待匹配的字符序列初始化匹配对
象。 Matcher m = p.matcher: ‚ 12abcd3fcsd: ;
举例2 :Matcher m; m=p.matcher: ‚aaa1abcd2bbb?: ;m.find() ;
System.out.println:m. start+?---?+m.end()+?,?+m.group() :3:staticBoolean matches:String regex,CharSequence input:使//结果1---6,2abcd3。用类名调用该方法,判断input是否与regex正则表达式匹
配。 6:public String replaceAll:String replacement:使用模式对象
: ;举例3 :Pattern.matches: ‚ \\dabcd\\d?, ‚ aaa1abcd2bbb?调用该方法,替换模式与给定替换字符串相匹
//结果返回true。配的输入序列的每个子序列。
4:String pattern()举例9 :Pattern p=Pattern.compile: ‚ \\dabcd\\d?: ;用对象调用,返回在其中编译过此模式的正则表达式。 Matcher m =p.matcher: ‚ 12abcd3fcsd: ;
举例4 :Pattern p =
Pattern.compile: ‚ \\dabcd\\d?: ;System.out.print:m.replaceAll: ‚***?: : ;p.pattern() ;//结果: 1***fcsd。
//结果返回字符串‚\\dabcd\\d?。 7:public boolean matches()
5:String[] split:CharSequence input: ;使用模式对象调用该方法,尝试将整个字符串与模式匹配。 用对象调用该方法,返回一个字符串数组,数组中的每个元若完全匹配返回true,否则返回false。
素都是input中被该模式对象拆分的字符串。 举例10 :Patternp=Pattern.compile: ‚ \\dabcd\\d?: ;举例5 :Pattern p =
Pattern.compile: ‚ :?: ; Matcher m = p.matcher: ‚ 1abcd3: ; Stringarry[]=p. split: ‚a:bcd:ef?: ; Matcher m1 = p.matcher: ‚2abcd33?: ;
//结果:arry[0]=?a?,arry[1]=?bcd?,arry[2]=?ef?。 If(m.matches() )System.out.print: ‚ok?: ;
If(m1.matches() ) System.out.print: ‚ok111?: ; 2 Matcher类//程序结果输出‚ok‚ 。主要方法:
3正则表达式的构造1:public boolean find()
1:代表单个字符的元字符使用模式对象调用该方法,尝试查找与该模式匹配的输入序
列的下一个子序列。若找到返回true,否则返回false。 元字符在正则表达式中的写法意义举例6 :Pattern p=Pattern.compile: ‚ \\dabcd\\d?: ; . ‚ .?代表任意一个字符Matcher m = p.matcher: ‚ 12abcd3fcsd: ; \d‚\\d?代表0—9的任何一个数字If(m.find() ) {System.out.print: ‚ok?: ; } \D‚\\D?代表任何一个非数字字符//m调用find: :方法,找到与之匹配的子序列‚2abcd3?,代表空格类字符:\s ‚\\s?程序将输出‚ok?。 ’ \t’ ‘\n’ ‘\x0B’ ‘\f’ ‘\r’
\S‚\\S?代表非空格类字符说明 :该方法始于匹配器区域的开头,如果该方法的前一次
代表可用于标识符的字符调用成功,并且没有重置,则下一次调用时从上次没有匹配的第\w ‚\\w? :不包括美元符号:一个字符开始。例如在上例中下一次匹配时从字符‚ ‚f处向后查找。 \W‚ \\W?代表不能用于标识符的字符2:publicboolean find: int start:
使用模式对象调用该方法,该方法重置匹配器,尝试查找匹(下转第186页)2012-07-13################2012-07-13########2012-07-13########
购买了EMC公司的CLARi iON CX700。 我们配备了45块硬盘的数据完整写入磁盘中,而且指示灯明显,能在很短时间内判断320G/10000转的硬盘,共12T的容量,因受windows系统的限制, 问题所在。正常情况下两个主机同时工作,平衡网络负载,当一每个硬盘分区最大2T,根据频道的分配,我们把CX700分成7七台主机宕机,另一台主机会承担起整个光纤网络的传输工作,面个区,每个分区6块硬盘,2T的容量。 7个频道共42块硬盘。 板指示灯会亮黄灯提示系统有问题。我们给CX700分配两个IP地剩下3块硬盘作为热备份,分别放在三层柜里。 CX700的基本参数: IE址,在播出网中任何一台计算机安装JAVA环境后,就能通过
主控模块:CX700 FC 8GB MEM FIELD INS浏览进入CX700,里面的运行状态一目了然。主机、硬盘、热备
外形规格:40U机架式份盘是否工作、 UPS电池、光纤通道等等任何部位出错都能在里
ATA硬盘扩展柜:每块扩展15个硬盘,共能扩展120个硬盘面显示,非常方便快捷。
驱动器:硬盘播出系统在前期投入和设计中都考虑到日后高清业务的
平均传输率:200MB/S发展,在设备、 网络都留下相应的接口。整个网络平台以千兆网
系统支持:Windows,Linux,NetWare,Solaris,HP-UX, 为基础,组成IP-SAN的结构,方便管理,技术成熟,到目前为AIX,Tru64止播出系统已满负荷运行三年多了,安全稳定,各设备运行正常,
外接主机通道:2GB/S*4的Fiber Channel光纤通道卡(HBA实现设计目标,各项技术指标均达国家标准。新系统承担了建国卡) 60周年、奥运、世博会、亚运等重点安全播出保障期6个自办频
RA I D级别:0 , 1 ,0+1 ,3, 5道的安全播出工作,得到了上级领导的嘉奖。我们相信新系统能
CX700 自身的冗余设计很好,安全性非常高,主机机头有两台、 继续为佛山电视台的发展做出贡献,同时也期待新技术能为广电光纤通道有四个,配备了UPS,能在突然断电的情况下把Cache里行业带来新的腾飞,能给广大市民观众带来新的视觉感受。
(上接第180页) (上接第184页)
2:限定符模式4结论
带限定符号带限定符号意义意义从几起案例中可以看出,尽管不接地电网的保护较为简单, 的模式的模式但在现场的实际应用中,仍存在可以不断提高的技术要求。工作X?X出现0次或1次X{n}X恰好出现n次的关键,在于以治本的态度,分析所遇到的问题,思考深层次的X*X出现0次或多次X{n, }X至少出现n次原因,以提出更好的解决思路。 X+X出现1次或多次X{n,m}X出现n次至m次参考文献
[1]贺家李,宋从矩,李永丽编著.电力系统继电保护原理与4应用举例
1:Emai l正则表达式的书写。 实用技术[M] .中国电力出版社,2008,8.
[2]江苏省电力公司.电力系统继电保护原理与实用技术[M] . Pattern emailer= Pattern.compile:"\\w+( [-+. ]\\w+:*@\\w+: [-. ]\\
中国电力出版社,2006, 11. w+:*\\. \\w+: [-. ]\\w+:*": ;
[3]国家电力调度通信中心.电力系统继电保护规定汇编[M] . 2:电话号码正则表达式的书写。 中国电力出版社,2007,4. Pattern tel =
Pattern.compile:"\\d{3,4}-\\d{7,8} |\\d{11}": ;
[4]江苏省电力公司.江苏电网220kV微机线路保护现场投运试参考文献验规程(试行) ,2003,2. [1]java大学实用教程.清华大学出版社. [5]国家电力调度通信中心.电力系统继电保护实用技术问答[2]java 2编程思想. [M] .中国电力出版社. 1999DL/T 559-2007.220kV,750kV电网继电
保护装置运行整定规程.
(上接第183页)
4:数字图像技术的实用性,只有最后运用到实践中才是最重这种方法是将某些特定信息按某种方式植入到电子出版物里,
要的;在产生版权纠纷的时候通过对数字水印的提取可以验证版权,保
护作者的权益,避免盗版。 5:运用新的方法来研究加密技术。如生物识别技术和量子密
4:数字图像的分存码等。
这种方式即可以达到信息的隐藏,又可以达到分散信息的目参考文献的。不仅耗费了攻击者的精力,也使他们之间相互牵制,提高信宋国强,丁文霞,刘立勇,鲁晓斌.浅谈数字图像加密技[1]息保密程度。 术[J] .科学信息:学术研究,2007(23) . 5图像加密的发展趋势[2]门国尊.电子档案中数字图像加密技术[J] .民营科技,
1:建立数字图像的安全模型与理论框架。包括图像的安全评2011. [3]田重生.关于电子加密技术[J] .通信保密, 1980. [4]价标准,安全策略,质量评价,算法抵抗攻击性;宁福旺.数字图像加密技术在邮政电子政务中的应用研究
2:找寻与压缩算法相结合的技术进行加密; [J] .邮政研究,2003.
3:从安全性的角度考虑加密效果的标准;
(上接第169页) (上接第182页)
参考文献参考文献
[1]蒲济生.城市污水处理厂污泥处置及资源化利用研究[D] . [1]陈世利.触摸屏的工作原理及典型应用[J] .单片机与嵌入长安大学,2006, l1.式系统应用,2002(2) 〃
[2]贾俊青,曹建军,李平在.呼和浩特公主府污水处理厂设[2]人机界面的组态工具EasyBuilder500软件操作手册计及运行调试[J] .内蒙古水利,2009(3) :l2l-
123. [M] 〃 [3]吴启红.变频器、可编程序控制器及触摸屏综合应
[3]丁志强.污水处理厂的设计与调试探讨[J] .北京:海洋出用技术
版社,2008〃 实操指导书[M] .2版.北京:机械工业出版社,2010,8〃 [4]严盈
[4]高志清.枣庄汇泉工艺调试与存在问题的探究[J] .北京:富.触摸屏与PLC入门[M] .北京:人民邮电出版社,
人民邮电出版社,2009〃 2006, 11.
《科技传播》 186
2012-07-13################2012-07-13#######2#012-07-13########
Your requestcould not be processed becauseof a configurationerror:"Could not connect to LDAPserver. "
For assistance,contact your network support team.
月付/年付优惠码:zji 下物理服务器/VDS/虚拟主机空间订单八折终身优惠(长期有效)一、ZJI官网点击直达ZJI官方网站二、特惠香港日本服务器香港大埔:http://hkdb.speedtest.zji.net/香港葵湾:http://hkkw.speedtest.zji.net/日本大阪:http://jpsk.speedtest.zji.net/日本大阪一型 ...
RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...
HostHatch在当地时间7月30日发布了一系列的促销套餐,涉及亚洲和欧美的多个地区机房,最低年付15美元起,一次买2年还能免费升级双倍资源。商家成立于2011年,提供基于KVM架构的VPS主机,数据中心包括中国香港、美国、英国、荷兰、印度、挪威、澳大利亚等国家的十几个地区机房。官方网站:https://hosthatch.com/NVMe VPS(香港/悉尼)1 CPU core (12.5%...