java正则表达式匹配小括号内的内容
经常用到正则匹配小括号内容,在此摘录下来
String content = "src: local('Open Sans Light'), local('OpenSans-Light'), url(http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTa-j2U0lmluP9RWlSytm3ho.woff2) format('woff2')";
// 从内容上截取路径数组
Pattern pattern = Pattern.compile("(?<=\\()[^\\)]+");
Matcher matcher = pattern.matcher(content);
while(matcher.find()){System.out.println(matcher.group());
}
输出
'Open Sans Light'
'OpenSans-Light'
http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTa-j2U0lmluP9RWlSytm3ho.woff2
'woff2'
还有一种情况是,我们只匹配url里面的内容,比如要匹配的字符串是
String content = "local('OpenSans-Light'),url(http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTa-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');unicode-range:U+0460-052F,U+20B4,U+2DE0-2DFF,U+A640-A69F;}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local('Open Sans Light'),local('OpenSans-Light'),url(http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTZX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local('Open Sans Light'),local('OpenSans-Light'),url(http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTRWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');unicode-range:U+1F00-1FFF;}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local('Open Sans Light'),local('OpenSans-Light'),url(http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTaaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');";
然后将正则规则修改为
Pattern pattern = Pattern.compile("(?<=url\\()[^\\)]+");
这样就能匹配如下内容了
http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTa-j2U0lmluP9RWlSytm3ho.woff2
http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTZX5f-9o1vgP2EXwfjgl7AY.woff2
http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTRWV49_lSm1NYrwo-zkhivY.woff2
http://fonts.gstatic.com/s/opensans/v13/DXI1ORHCpsQm3Vp6mXoaTaaRobkAwv3vxw3jMhVENGA.woff2
正则中使用了零宽度断言
java正则表达式匹配小括号内的内容相关推荐
- java 正则 小括号_java正则表达式匹配小括号内的内容
正则表达式用来指定字符串模式.当你需要定位匹配某种模式的字符串时就可以使用正则表达式.例如,我们下面的一个例程就是在一个HTML文件中通过查找字符串模式来定位所有的超链接. 当然,为了指定一种 ...
- 正则表达式-获取小括号内的内容
需求 在开发过程需要获取字符串中在小括号内的内容,遂记录一下 实现 import cn.hutool.core.util.ReUtil; public class RegexTest { pub ...
- Java正则获取小括号中的内容_java正则表达式获取大括号小括号内容并判断数字和小数亲测可用...
获取大括号小括号内容 项目开发用到了,暂做个简单记录 private static String regex = "\\{([^}]*)\\}";//匹配大括号 private s ...
- 使用正则表达式 匹配 HTML 标签内的内容
正则表达式如下 /(?<=((<[a-zA-Z-]+?){0,1}>))([\s\S]+)(?=([\s]{0,1}<\/[a-zA-Z-]+(>{0,1})))/g 测 ...
- java 正则表达式 大括号_正则表达式:小括号、中括号、大括号的区别
一.小括号().中括号[].大括号的区别 1>. 小括号():匹配小括号内的字符串,可以是一个,也可以是多个,常跟"|"(或)符号搭配使用,是多选结构的 示例1:string ...
- 正则表达式:( ) 小括号、[ ] 中括号、{ } 大括号的区别
小括号().中括号[].大括号的区别 1. 小括号(): 匹配小括号内的字符串,可以是一个,也可以是多个,常跟"|"(或)符号搭配使用,是多选结构的 示例1:string name ...
- java操作txt文本(二):删除文本括号内的内容
想法由来:之前写读书报告时,遇到一些烦人的文献,总喜欢把注释作为括号内容放到正文中,使文章繁琐冗长,所以写了下面这个代码,剔除了括号内的内容. 适用条件:原txt文本中的括号使用正确,即左右括号匹配正 ...
- php获取括号中的内容,PHP实现正则匹配所有括号中的内容
PHP实现正则匹配所有括号中的内容 正则表达式:(?<=[)[^]]+ 注:以匹配中文括号中内容为例,如果匹配非中文括号,则需要在括号前增加转义符 PHP实现示例: $strSubject = ...
- Java 正则表达式匹配模式[贪婪型、勉强型、占有型]
转载自 Java 正则表达式匹配模式[贪婪型.勉强型.占有型] Greediness(贪婪型):最大匹配 X?.X*.X+.X{n,} 是最大匹配.例如你要用 "<.+>&qu ...
最新文章
- AttributeError: ‘tuple‘ object has no attribute ‘group‘
- ADPRL - 近似动态规划和强化学习 - Note 2 - Stochastic Finite Horizon Problem
- Windows下C 用 Socket 发送图片--基础
- 不知是哪个家伙写的,相当的有才啊!
- CF1580B Mathematics Curriculum(笛卡尔树、树形dp)
- A Way to implement Abstract Class In Flex
- Linux内核开发:内核模块参数
- opencv基础:adaboost+haar目标检测技术(上)
- android mmkv使用_锦囊篇|一文摸懂SharedPreferences和MMKV(一)
- react-native 适配问题
- python计算机视觉库_荐 python计算机视觉入门
- 单纯形法的四种特殊情形
- 基于Matlab的车辆型号识别系统
- 敏捷与CMMI的同与不同
- 10.5NOIP模拟考 dfs序+贪心
- html 画 斜线表头,HTML 斜线 表头
- 一年级上册计算机教学计划,一年级信息技术上册教学计划
- sleep ,wait,notify和notifyAll
- mysql numeric 区别_Mysql中NUMERIC和DECIMAL类型区别比较
- pandas统计表格中politics列字符个数