- 浏览: 334177 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
努力吧飞翔:
...
[ExtJS] MVC应用架构示例 -
coolnight:
[Maven]Nexus 安装与配置 -
Kevin_jiang2011:
官网的文档写的不好。 简单的执行命令,又要重新下载一个ecli ...
jBPM5 入门 -
litterdeer:
好东西....
[ExtJS] MVC应用架构示例 -
basherone:
可以用,谢谢了
[ExtJS] MVC应用架构示例
Jakarta-ORO 是一个Java工具包用来在 Java 类中进行文本处理的功能,提供兼容 Perl5 的正则表达式、类 AWK 的正则表达式等。
下载:
http://archive.apache.org/dist/jakarta/oro/
ORO.java
下载:
http://archive.apache.org/dist/jakarta/oro/
ORO.java
package cn.bisoft.go; import org.apache.oro.text.regex.MalformedPatternException; import org.apache.oro.text.regex.MatchResult; import org.apache.oro.text.regex.Pattern; import org.apache.oro.text.regex.PatternCompiler; import org.apache.oro.text.regex.PatternMatcher; import org.apache.oro.text.regex.PatternMatcherInput; import org.apache.oro.text.regex.Perl5Compiler; import org.apache.oro.text.regex.Perl5Matcher; import org.apache.oro.text.regex.Perl5Substitution; import org.apache.oro.text.regex.Util; public class ORO { public void usage(String input, String regex) { // 1 创建 PatternCompiler PatternCompiler compiler = new Perl5Compiler(); // 2 创建 Pattern Pattern pattern = null; try { /* * CASE_INSENSITIVE_MASK : 区分大小写 * DEFAULT_MASK : 默认(不区分大小写) * EXTENDED_MASK : 支持Perl5 扩展正则表达式 * MULTILINE_MASK : 多行匹配,^$匹配每行内容. * SINGLELINE_MASK :单行匹配 ^$匹配全部内容. * READ_ONLY_MASK : Perl5Pattern 是只读的,提高性能且线程安全. */ pattern = compiler.compile(regex, Perl5Compiler.READ_ONLY_MASK|Perl5Compiler.MULTILINE_MASK); } catch (MalformedPatternException e) { e.printStackTrace(); } // 3 创建 PatternMatcher PatternMatcher matcher = new Perl5Matcher(); // 3.1 只匹配一次 if (matcher.contains(input, pattern)) { MatchResult matchResult = matcher.getMatch(); System.out.println(matchResult.toString()); } // 3.2 匹配多次, 使用PatternMatcherInput PatternMatcherInput patternMatcherInput = new PatternMatcherInput(input, 0, input.length()); while (matcher.contains(patternMatcherInput, pattern)) { MatchResult matchResult = matcher.getMatch(); /* System.out.println(matchResult.begin(0)); // 0分组索引 , 匹配串开始值 ,如匹配串xxxx xxx, 总是0. System.out.println(matchResult.end(0)); // 0分组索引, 匹配串结束值 , 如xxxxxxx , 则相应值为 4 3. System.out.println(matchResult.beginOffset(0)); // 0分组索引,匹配串在源串开始索引 System.out.println(matchResult.endOffset(0)); // 0分组索引,匹配串在源串结束索引 System.out.println(matchResult.groups()); // 分组数量 System.out.println(matchResult.length()); // 匹配串长度 System.out.println(matchResult.toString()); // 匹配串 */ String group = matchResult.group(0); // group 是正则表达式里面的()个数, 0// 代表匹配串, 1 代表第一个括号匹配串 System.out.println(group); // tangliang group = matchResult.group(1); System.out.println(group); // g group = matchResult.group(2); System.out.println(group); // g } // 4 创建替换对象 Substiution Perl5Substitution substiution = new Perl5Substitution("amos_tl"); // 5 文本替换 String output = Util.substitute(matcher, pattern, substiution, input, Util.SUBSTITUTE_ALL); System.out.println("output:" + output); // output:xxxxTangliangxxxamos_tlxxx } public static void main(String[] args) { ORO oro = new ORO(); oro.usage("xxxxTangliangxxxtangliangxxx", "tan(g)lian(g)"); } }
发表评论
-
[JMX] jconsole client
2014-12-19 03:26 923jconsole client --------------- ... -
Apache ActiveMQ 入门
2014-11-22 17:53 0Apache ActiveMQ -------------- ... -
tomcat 编译
2014-08-30 15:31 8921. 下载源码 http://svn.apache.org/ ... -
MINA
2014-06-19 12:58 1007MINA(Multipurpose Infrastructur ... -
[Activiti] Activiti in action
2014-01-01 12:19 1015Activiti in action ------------ ... -
elasticsearch 入门
2013-09-10 14:59 0elasticsearch -- 1 安装 1.1 ... -
文本搜索工具
2013-07-18 16:12 922文本搜索工具 本工具可用于搜索文本内容,并增强了JAR文件内 ... -
[Maven]Nexus 安装与配置
2012-06-02 08:00 77631 下载Nexus http://www.sonatype.o ... -
Quartz CronExpression
2011-10-23 19:39 1382CronExpression ================ ... -
Quartz
2011-10-22 19:21 2731Quartz ========= 1 官网: http:// ... -
将数字转换成中文字符串
2011-10-22 17:08 1656将数字转换成中文字符串 ----------------- ... -
DTD 教程
2011-10-01 18:31 1203DTD 教程 -------------- 文 ... -
JAD 的使用
2011-09-08 11:24 1047JAD 的使用 ================ 1. 安装 ... -
FreeMarker 入门
2011-09-04 20:08 1178FreeMarker 入门 ================= ... -
Struts2 启动过程
2011-09-03 00:04 1090Struts2 启动过程: 2 与 3 的顺序应该颠倒 ... -
JAVA 泛型
2011-08-31 08:20 1259JAVA 泛型 ----------- 下面代码解释: 类泛型 ... -
ANT build.dtd
2011-08-30 14:39 1209ANT build.dtd Eclipse 配置自动提示: ... -
Log4j 日志框架入门
2011-08-28 19:43 21421 讨论组: log4j-user@jakarta.apach ... -
Schema Export
2011-08-25 18:26 1043build.xml <?xml version ... -
JavaDoc 命令
2011-08-24 01:34 1487应用主目录下执行: javadoc -d .\doc ...
相关推荐
java正这表达式,简单.好用.
这个是一个功能的文件我自己也记不住了 但是大家在学这个东西时肯定要输入这个名字去找所以 功能不用知道
Jakarta-ORO 2.0.8 API
jakarta-oro-2.0.8 正则表达式 引擎 源代码
Jakarta-ORO是最全面以及优化得最好的正则表达式API之一,Jakarta-ORO库以前叫做OROMatcher,是由Daniel F. Savarese编写,后来他赠给Jakarta Project。 Jakarta-ORO正则表达式库支持Perl5兼容的正则表达式语法。
Java正则表达式应用-Jakarta-ORO篇,这里详细的统计了正则表达式的在java中的运用,
jar包,亲测可用
commons-net-1.4.1 和 jakarta-oro-2.0.8 .rar
jakarta-oro-2.0.8 java正则表达式扩展 apache出品
使用commons的net包进行ftp链接,commons-net包封装了一些常见的网络包:ftp,smtp,pop3等 相关包:commons-net-1.4.1.jar ; commons-io-1.4.jar;jakarta-oro-2.0.8.jar
jakarta-oro.jar包供大家享用 博文链接:https://xzio.iteye.com/blog/117213
jakarta-oro-2.0.6.jar对Struts的验证框架的mask验证规则所用到的类库
标签:ant-jakarta-oro-1.6.1.jar.zip,ant,jakarta,oro,1.6.1,jar.zip包下载,依赖包
Java_FTPClient实现文件上传下载,所用到的jar包有: commons-net-1.4.1.jar jakarta-oro.jar
Jakarta-ORO是最全面以及优化得最好的bai正则表达式API之一,duJakarta-ORO库以前叫做zhiOROMatcher,是由Daniel F. Savarese编写,后来他将其赠与daoJakarta Project。是面向JAVA的正则表达式库
FTP上传下载所需的jakarta-oro-2.0.8.jar包希望可以帮到大家谢谢
Free regex for Java from apache
ftp所需jar包(commons-net-1.4.1.jar,jakarta-oro-2.0.8.jar)