正则匹配文本中的括号

记录一下如何用正则匹配文本中的() [] {}

  1. ()的匹配
    ()进行匹配时都前后都需要进行转义
     String demo2 = "abcd394de (fsd) cost : 2312";// 示例文本Pattern pattern2 = Pattern.compile("[a-z0-9]+\\s+" +"(?<thread>\\([a-z]{1,4}\\))" +"\\s+[a-z]{1,4}\\s+:\\s+(?<rt>\\d+)");Matcher matcher2 = pattern2.matcher(demo2);if(matcher2.matches()){System.out.println(matcher2.group("thread"));// (fsd)System.out.println(matcher2.group("rt")); // 2312}
  1. []的匹配
    [] 进行匹配时只需要将前面的 “[” 进行转义
     String demo = "abcd394de [http-fdk-fs] cost : 2312";Pattern pattern = Pattern.compile("[a-z0-9]+\\s+" +"(?<thread>\\[http-[a-z]{1,4}-fs])" +"\\s+[a-z]{1,4}\\s+:\\s+(?<rt>\\d+)");Matcher matcher = pattern.matcher(demo);if(matcher.matches()){System.out.println(matcher.group("thread"));//[http-fdk-fs]System.out.println(matcher.group("rt"));// 2312}
  1. {} 的匹配
    {}进行匹配时跟[]一样只需要前面的 “{” 进行转义
     String demo3 = "abcd394de {fkd} cost : 2312";Pattern pattern3 = Pattern.compile("[a-z0-9]+\\s+" +"(?<thread>\\{[a-z]{1,4}})" +"\\s+[a-z]{1,4}\\s+:\\s+(?<rt>\\d+)");Matcher matcher3 = pattern3.matcher(demo3);if(matcher3.matches()){System.out.println(matcher3.group("thread"));// {fkd}System.out.println(matcher3.group("rt"));// 2312}

进行一个整合,同时进行匹配

     String demo4 = "abcd394de [http-http-fs] (fsd) {fkd} cost : 2312"; // 示例文本   Pattern compile = Pattern.compile("(?<extra>[a-z0-9]+)"+ "\\s+"+ "(?<thread>\\[[a-z]{1,4}-[a-z]{1,4}-[a-z]{1,2}])"+ "\\s+"+ "(?<thread2>\\([a-z]{1,4}\\))"+ "\\s+"+ "(?<thread3>\\{[a-z]{1,4}})"+ "\\s+"+ "[a-z]{1,4}"+ "\\s+:\\s+"+ "(?<rt>\\d+)");Matcher matcher4 = compile.matcher(demo4);if (matcher4.matches()) {System.out.println(matcher4.group("thread")); // [http-http-fs]System.out.println(matcher4.group("thread2")); // (fsd)System.out.println(matcher4.group("thread3")); // {fkd}System.out.println(matcher4.group("rt")); // 2312}

正则匹配文本中的括号相关推荐

  1. 匹配文本中的网址java正则表达式

    司有个业务需要匹配文本中的网址,度娘,谷哥了半天经常看到有对html中获取超链接的正则,只要匹配<a href=['"]?(.*?)['"]?即可,但如果是普通文本类型的则比 ...

  2. 用正则匹配字符串中连续的字符

    用正则匹配字符串中连续的字符 1.通过利用正则来匹配字符串中有两个或两个以上的连续字符的子字符串 方法如下: <script>var reg =/(.)\1{1,}/g;//正则表达式va ...

  3. php文章远程图片,php保存远程图片到本地 php正则匹配文章中的远程图片地址

    在添加文章的时候,很多情况下我们需要处理文章中的远程图片,将其保存到本地,以免别人网站删除后文章里面就无法访问了. 因此我们需要正则匹配文章中的图片地址, 这里我们使用php的正则表达式来实现:$co ...

  4. php 正则获取某个div,php正则匹配html中带class的div并选取其中内容的方法

    本文实例讲述了php正则匹配html中带class的div并选取其中内容的方法..具体分析如下: 先看一段html代码: 代码如下: 潮汐表数据仅供参考 潮时 (Hrs) 00:58 05:20 13 ...

  5. 中文字符匹配java_java正则匹配HTML中a标签里的中文字符示例

    java正则匹配HTML中a标签里的中文字符示例 发布于 2020-8-12| 复制链接 摘记: 本文实例讲述了java正则匹配HTML中a标签里的中文字符.分享给大家供大家参考,具体如下:今天群里一 ...

  6. IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题)

    IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) 参考文章: (1)IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) (2)https:// ...

  7. JS 使用正则匹配字符串中所有大括号包含的数据,转换成数组形式

    JS 使用正则匹配字符串中所有大括号包含的数据,转换成数组形式 .match(/{[^}{]*?}/g)

  8. php 正则匹配字符串中的所有数字

    php 正则匹配字符串中的所有数字 function isHaveKC($str){preg_match_all('/\d+/',$str,$arr);print_r($arr); } echo is ...

  9. 正则匹配字符串中的相同项

    正则匹配字符串中的相同项,再精确匹配数字并取出最大值 业务中多层嵌套的数组对象,每个对象都有一个唯一值,需要过滤这唯一值,如果有新对象加入,需要把新的对象也添加一个唯一值 这时考虑把数组对象转换为字符 ...

最新文章

  1. Redis-3.2.6 配置文件中文翻译
  2. Linux之父为过去的言行道歉,宣布离开社区反思
  3. 正确认识Arrays.asList方法
  4. spring框架三层架构_Spring框架架构
  5. 东南大学王萌 | “神经+符号”学习与多模态知识发现
  6. python 反射和动态加载_Python的反射
  7. bzoj1596[Usaco2008 Jan]电话网络*
  8. 「老家」山西凤凰城,说话饮食都像极了西安,人称“最不像山西的城市”
  9. 一加7海外提前上架 骁龙855+12GB超大内存
  10. 网站移动端500错误_PC网站和移动端网站有什么差异?
  11. PYTHON笔记 面向对象程序设计
  12. ip扫描工具之traceroute/nmap/fping
  13. VBlog项目代码理解之前后端交互
  14. 学习笔记 - excel筛选分组
  15. 机房布线的最高境界 | 最后的暗黑系,真是亮瞎眼
  16. 如何配置luogu,codeforces的spj(special judge)
  17. android A~Z通讯录排序索引
  18. PHP高级计算器的过程,PHP基于堆栈实现的高级计算器功能示例
  19. 技术分享 | 如何计算 MySQL 的 QPS/TPS
  20. Linux 命令(68)—— realpath 命令

热门文章

  1. (附源码)springboot车辆管理系统 毕业设计031034
  2. 贝叶斯公式/朴素贝叶斯分类器及python自实现
  3. 淘宝/天猫开放平台新商品发布API接口,商品发布接口,店铺上传接口,利用淘宝新品发布商品接口进行上传商品至淘宝店铺,接口对接方案
  4. redis发布订阅与集群
  5. 【空格】前后是非多,它能导致大故障,请看
  6. 微信小程序开发实现微信支付
  7. Java密码连接redis
  8. [m0leCon beginner 2022] 部分
  9. 专题分纲目录 MEM/MBA数学基础
  10. 报表数据填报中的合法性校验