1 / 13
文档名称:

kettle正则表达式.docx

格式:docx   大小:284KB   页数:13页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

kettle正则表达式.docx

上传人:niupai11 2022/6/23 文件大小:284 KB

下载得到文件列表

kettle正则表达式.docx

相关文档

文档介绍

文档介绍:许多语言,包括Perl、PHP、Python、JavaScript和JScript,都支持用正则表达式处理文 本,一些文本编辑器用正则表达式实现高级“搜萦替换”功能。那么Java又怎样呢?本文 写作时,一个包含了用正则表达式进行文本处理的J码的例子中,所有出现“[0-9] ”的地方我们都可以使用“\d”。 修改后的正则表达式如图七所示:
连字符 连宇符
\d{3} \- \d{2} \- \d{4}
前三个数字 中间两个数字 最后四个数字
图七:匹配所有123-12-1234格式的社会安全号码
二、Jakarta-0R0 库
有许多源代码开放的正则表达式库可供Java程序员使用,而且它们中的许多支持Perl 5 兼容的正则表达式语法。我在这里选用的是Jakarta-ORO正则表达式库,它是最全面的正 则表达式API之一,而且它与Perl 5正则表达式完全兼容。另外,它也是优化得最好的 API 之一。
Jakarta-ORO 库以前叫做 OROMatcher, Daniel Savarese 大方地把它赠送给了 Jakarta Projec t。你可以按照本文最后参考资源的说明下载它。
我首先将简要介绍使用Jakarta-ORO库时你必须创建和访问的对象,然后介绍如何使用 Jakarta-ORO API。
▲ PatternCompiler 对象
首先,创建一个Perl5Compiler类的实例,并把它赋值给PatternCompiler接口对象。 Perl5Compiler是PatternCompiler接口的一个实现,允许你把正则表达式编译成用来匹 配的Pattern对象。
Pat"ter nComp i ler comp i I e r=new Pe r 15Compi I er C);
▲ Pattern 对象
要把正则表达式编译成Pattern对象,调用compiler对象的compile()方法,并在调用
参数中指定正则表达式。例如,你可以按照下面这种方式编译正则表达式“t[aeio]n” :
Pattern pattern二nulI;
■try {
palterr=compi I I e ("t [aei oln^):
1 (Ms IrmedPat+er np+ i &n 色) {
r i n+StackTr ace U ;
1
默认情况下,编译器创建一个大小写敏感的模式(pattern)。因此,上面代码编译得到 的模式只匹配“t in”、“ tan”、 “t en”和“t on”,但不匹配“Tin ”和“t aN”。要 创建一个大小写不敏感的模式,你应该在调用编译器的时候指定一个额外的参数:
pa-tterr=c=omp. i I 电(% [m 电 i o]n" .Per I SComp i I . CASE_I NSENS ITI VE_MASK):
创建好Pattern对象之后,你就可以通过PatternMatcher类用该Pattern对象进行模式 匹配。
▲ PatternMatcher 对象
PatternMatcher对象根据Pattern对象和字符串进行匹配检查。你要实例化一个 Perl5Matcher 类并把结果赋值给 PatternMatcher 接口。Perl5Matcher 类是
PatternMatcher接口的一个实现,它根据Perl 5正则表达式语法进行模式匹配:
Pnt七旨r nIvtatQher matGher=nen Fpr 1 Shldtcher ():
使用PatternMatcher对象,你可以用多个方法进行匹配操作,这些方法的第一个参数都 是需要根据正则表达式进行匹配的字符串:
• boolean matches(String input, Pattern pattern):当输入字符串和正则表达式要 精确匹配时使用。换句话说,正则表达式必须完整地描述输入字符串。
• booleanmatchesPrefix(String input, Pattern pattern) 当正则表达式匹配输入字 符串起始部分时使用。
• boolean contains(String input, Pattern pattern)当正则表达式要匹配输入字符 串的一部分时使用(即,它必须是一个子串)。
另外,在上面二个方法调用中,你还可以用PatternMatcherlnput对象作为参数替代 St ring对象;这时,你可以从字符串中最后一次匹配的位置开始继续进行匹配。当字符 串可能有多个子串匹配给定的正则表达式时,用PatternMatcherlnput对象作为参数就很

最近更新

2024年亲子教育培训心得体会(精选13篇) 27页

人教部编版六年级下册语文期末复习古诗词专项.. 5页

关于冬天的中班市公开课获奖教案省名师优质课.. 5页

2024年五年级教学计划 英语教学计划总结 22页

八年级数学市公开课获奖教案省名师优质课赛课.. 5页

儿歌彩虹市公开课获奖教案省名师优质课赛课一.. 5页

健康养宠物要注意市公开课获奖教案省名师优质.. 4页

体育市公开课获奖教案省名师优质课赛课一等奖.. 4页

五年级下册湘少版市公开课获奖教案省名师优质.. 5页

二十四节气歌市公开课获奖教案省名师优质课赛.. 4页

两猫相争市公开课获奖教案省名师优质课赛课一.. 4页

三年级语文上册第一单元市公开课获奖教案省名.. 3页

七年级语文春的市公开课获奖教案省名师优质课.. 4页

一年级人之初的市公开课获奖教案省名师优质课.. 6页

《玩沙安全》市公开课获奖教案省名师优质课赛.. 4页

《南瓜汤》市公开课获奖教案省名师优质课赛课.. 5页

高中城市化课堂教学设计 5页

面的旋转教学设计两课时 5页

金华小学分层教学设计 4页

华为公司质量管理手册 51页

浮法玻璃断面条纹均匀性产生因素和研究应用 7页

梁实秋散文集:骂人的艺术 3页

混凝土地坪施工合同(打地坪施工合同) 56页

借鉴市委办公厅工作114个失误实例(全集排版2.. 94页

山区公路路线总体设计思路(合理掌握运用技术指.. 27页

农村供水工程实施方案 7页

美丽洲教堂分析 3页

卷烟营销策划与实操 96页

县招商局党性分析材料(精简篇) 4页