【问题】

在折腾:

的过程中,需要用到命名的组,另外还用到替换中的引用命名的组。

想要搞懂如何使用。

【解决过程】

1. 最开始是参考,官网手册:

中,并没有看到,如何使用命名的组。

2.参考:

得知,之前老版本的Java是不支持named group的

最新的Java 7,支持named group了。

3.后来才注意到上述:

中的地址是Java 6的:

把其手动换成 Java 7的:

其实就可以看到官网的解释了:(?X)

X, as a named-capturing group

但是,官网中的解释,竟然没有其他相关的语法。

比如,在正则的替换中,如何引用命名的组之类的。

所以说,还是做的很烂。

【总结】

1. 看来Java做的还是,够烂啊。

这么显而易见的,正则表达式的基本功能之一,竟然都不支持。

也太假了,都弄到了Java 7,才支持,太挫了。

2.参考Regex Named Groups in Java并修订,翻译,对于Java 7+ 中的命名的组的用法,总结如下:(?X)  定义一个名为groupName的组

\\k 用于向后引用(back reference)名为groupName的组

${groupName} 用于,在替换函数中,后向引用名为groupName的组

group(groupName) 用于获得对应的带捕获的名为groupName的组的值

此处的,相关部分的代码如下:String filenameStr = "aa/haha.exe";

//named group only support after Java 7

//here is my java version:

//Java: 1.7.0_09; Java HotSpot(TM) 64-Bit Server VM 23.5-b02

Pattern filenameP = Pattern.compile("^.+/(?.+)$");

Matcher filenameMatcher = filenameP.matcher(filenameStr);

boolean foundFilename = filenameMatcher.matches();

System.out.println(filenameMatcher);

System.out.println(foundFilename);

String onlyFilename = filenameMatcher.replaceFirst("${filenamePart}");

System.out.println(onlyFilename);

对于的输出为:java.util.regex.Matcher[pattern=^.+/(?.+)$ region=0,11 lastmatch=aa/haha.exe]

true

haha.exe

java正则匹配公司名称_【已解决】Java的正则表达式java.util.regex中的命名的组(named group)...相关推荐

  1. java 的 exe脱壳_[已解决]求教如何使用java编写加壳程序对PE文件进行加壳

    20 2017-5-8 15:15 这个问题就需要来谈谈壳的架构问题了. 壳的三大架构 1.最早的壳几乎都是virus演化来的,大部分都是汇编直接写的. 好处就是直接可以把汇编代码复制出来当作壳的lo ...

  2. java正则匹配汉字_正则表达式匹配中文汉字

    文章告诉你如何利用php教程 正则表达式匹配中文汉字哦,下面我们主要讲利用preg_match mb_eregi来验证汉字,并且正则过程出现问题的解决方法. preg_match("/[a- ...

  3. java正则匹配换行_正则表达式怎么匹配换行符

    正则表达式匹配文本中包含换行符等空白字符如何匹配 使用[\s\S]匹配任意字符,而不是使用"." 使用s单行修饰模式,例:$pattern = '#abc.*?def#s'; // ...

  4. java 正则 空白字符_关于JAVA正则匹配空白字符的问题

    今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示"\u3000" ,这是什么? 这是全角空格!!! 查了一下    \s   ...

  5. java正则匹配table_js正则匹配table tr

    js正则匹配table tr 我觉得比ijao简单,但是脑子就是转不过弯....请正则高手看看阿. 复制代码 代码如下: title title2 data1 data2       data1 da ...

  6. Java正则匹配提取年月日字符串

    Java正则匹配提取年月日字符串 String string1="9999-9-99";Pattern p = Pattern.compile("(\\d{4})-(\\ ...

  7. Java正则匹配 以某个汉字开头和结束

    Java正则匹配 以某个汉字开头和结束 Java代码示意: public static void main(String[] args) {String str = "正则匹配测试" ...

  8. 已解决ubuntu虚拟机安装java/jdk

    已解决ubuntu虚拟机安装java/jdk 文章目录 报错代码 报错翻译 报错原因 解决方法 帮忙解决 报错代码 粉丝群里面的一个小伙伴想在ubuntu虚拟机中用yum安装java,但是发生了报错( ...

  9. 一个通用的Java正则匹配工具(检查邮箱名、电话号码、用户密码、邮政编码等合法性的工具类)

    一个通用的Java正则匹配工具(检查邮箱名.电话号码.用户密码.邮政编码等合法性的工具类). 一个通用且常用的Java正则匹配工具,用以检查邮箱名.电话号码.用户密码.邮政编码等合法性. import ...

最新文章

  1. 详解Silverlight Treeview的HierarchicalDataTemplate使用
  2. 超越时代的天才——图灵
  3. 专家访谈:为什么我们需要Erlang
  4. Oracle ODP.NET数据库访问连接字符串
  5. Linux学习之基本介绍
  6. MVC表示层框架——Velocity技术
  7. Java入门教程[9天快速入门JAVA]
  8. python中byte2array报错_python – 使用ByteArrays解压缩Zlib字符串
  9. servlet 单例问题
  10. ZooKeeper Watcher注意事项
  11. excel2010文件转换为 dbf 格式文件
  12. 数据分析实战项目:SQL分析淘宝用户行为
  13. iOS 银行卡号识别
  14. java毕业设计开题报告javaweb户籍管理系统|户口
  15. Roundcube开启用户自助更改密码功能
  16. 边读边捋【july的】海量数据处理面试题
  17. 欧拉公式matlab
  18. Java之CompletableFuture异步、组合计算基本用法
  19. Ray-分布式的SGD
  20. java做小窗体_java实现简单窗体小游戏----球球大作战

热门文章

  1. 苹果6可以分屏吗_苹果testflight上架可以永久使用吗?
  2. 计算机应用技术适合女孩学吗,计算机应用技术适合女生学吗
  3. C语言调色板颜色渐变,【多选题】使用调色板可以对矢量图添加什么变化? A. 纯色 B. 线性渐变 C. 径向渐变 D. 透明度 E. 位图填充...
  4. [经验教程]一个爱奇艺VIP会员帐号怎么共享给多个朋友家人使用同一个爱奇艺会员账号?
  5. 记忆化dfs(爱吃奶酪的肥老鼠)
  6. 第四批鸿蒙手机排行,鸿蒙系统名单已确认!麒麟9000首批,这些手机将被淘汰......
  7. AWSL!这波回忆杀真的爱了!
  8. 计算机网络 | 数据链路层
  9. 中国式家长手游电脑版怎么玩 中国式家长手游模拟器教程
  10. java实现a3打印_javase 打印杨辉三角