Java 正则表达式应用一例
来源:互联网 发布:linux就该这么学电子书 编辑:程序博客网 时间:2024/05/17 07:06
目录(?)[+]
场景
想匹配一个数字形式的IP地址,地址后可能有端口号,也可能没有。在做这个小功能的时候发现Java 的正则表达式匹配(Group Capture)功能有抓取和不抓取(Capturing vs Non-Capturing)两种选择,如果想选择不抓取一个组,只需要让匹配组的正则表达式以(?:起头。
例子
例1
- public static void main(String args[]) {
- final String regStr = "http://(\\d+.\\d+.\\d+.\\d+(:8080)?)";
- String data = "http://80.80.9.3:8080"
- Matcher m = Pattern.compile(regStr).matcher(data);
- boolean found = m.find();
- System.out.println(found);
- System.out.println(m.group(1));
- System.out.println(m.group(2));
- }
输出
- 80.80.9.3:8080
- :8080
例2
- public static void main(String args[]) {
- final String regStr = "http://(\\d+.\\d+.\\d+.\\d+(?::8080)?)";
- String data = "http://80.80.9.3:8080"
- Matcher m = Pattern.compile(regStr).matcher(data);
- boolean found = m.find();
- System.out.println(found);
- System.out.println(m.group(1));
- System.out.println(m.group(2));
- }
输出
- 80.80.9.3:8080
- Exception in thread "main" java.lang.IndexOutOfBoundsException: No group 2
by lucoz
- Java 正则表达式应用一例
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 (一)
- JAVA中正则表达式的应用 一
- JAVA中正则表达式的应用 (一)
- Java 中正则表达式的应用(一)
- Java 中正则表达式的应用 ( 一 )
- java正则表达式应用
- java 正则表达式应用
- Java正则表达式应用
- Java正则表达式应用
- 调研:开源搜索引擎
- elasticsearch-river-jdbc
- 火狐stylish插件解决BIOS之家没有滚动条问题
- Stop Audio Record
- 给程序员的忠告:九种不值得你追随的老板
- Java 正则表达式应用一例
- 《渗透测试实践指南》读书笔记之后门和rootkit
- ubuntu eclipse代码编辑去
- ucGUI 消息驱动机制结构和使用
- APNS推送通知的流程
- Catalan数的解法
- 使lightbox2 的弹出的大图片自动适应屏幕大小
- 查看无root权限Android手机的app数据库
- tinyxml使用指导