I have the following Java regex, which I didn't write and I am trying to modify:

^class-map(?:(\\s+match-all)|(\\s+match-any))?(\\s+[\\x21-\\x7e]{1,40})$

^ ^

It's similar to this one.

Note the first question mark. Does it mean that the group is optional? There is already a question mark after the corresponding ). Does the colon have a special meaning in regex?

The regex compiles fine, and there are already JUnit tests that show how it works. It's just that I'm a bit confused about why the first question mark and colon are there.

解决方案

(?: starts a non-capturing group. It's no different to ( unless you're retrieving groups from the regex after use. See What is a non-capturing group? What does a question mark followed by a colon (?:) mean?.

java正则匹配冒号,正则表达式:问号和冒号相关推荐

  1. java正则匹配_JAVA正则表达式匹配括号

    JAVA的正则表达式目前还不支持平衡组,要实现匹配括号只有定制深度. 其原理就是不断循环匹配括号里的内容和括号后面的内容(\\([^\\(\\)]*\\)[^\\(\\)]*)* 例子: //匹配二级 ...

  2. java 正则匹配_正则表达式真的很强大,可惜你不会写

    专注于Java领域优质技术,欢迎关注 本文旨在用最通俗的语言讲述最枯燥的基本知识 文章提纲: 元字符 重复限定符 分组 转义 条件或 区间 正则表达式在几乎所有语言中都可以使用,无论是前端的JavaS ...

  3. java正则匹配ip_正则表达式 - 匹配 IP 地址

    17220161221160719 IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写.IP地址是IP协议提供的一 ...

  4. java正则匹配ip_正则表达式匹配ip地址

    iPv4的ip地址都是(1~255).(0~255).(0~255).(0~255)的格式 下面给出相对应的正则表达式: "^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9] ...

  5. java正则匹配url_正则表达式匹配URL

    最近在做一些关于URL匹配的项目,本来对正则表达式了解的不多,上网搜索了好多前辈写的正则表达式,发现很少能被我使用的,现将我自己写的正则表达式贴出来,供大家参考. %% 首先,正则表达式: Strin ...

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

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

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

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

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

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

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

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

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

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

最新文章

  1. 怎样用Python控制图片人物动起来?一文就能Get!
  2. ggplot2包绘基因差异表达点图
  3. 【Android工具】更新WPS全功能正版授权无广告版
  4. SharePoint 2013 - Sideloading
  5. java axmlprinter_安卓xml配置文件解析工具-AXMLPrinter2.jar(androidmanifest.xml 反编译)下载官方最新版-西西软件下载...
  6. 教程 | 如何优雅而高效地使用Matplotlib实现数据可视化
  7. Deep Learning Literature 常用词中英文总结(一)
  8. c++实验总结_高考化学选三简答题总结6——配位化合物、配位键、配位数
  9. bzoj 3101: N皇后
  10. Linux 定时器使用
  11. JavaScript中的面向对象编程
  12. PHP自学教程之PHP语法基础
  13. 为什么越长大越不想过生日
  14. 微信小程序 本地存储及调用
  15. python3实现PAT乙级算法题库全集
  16. 国产CPU产业链的逻辑架构
  17. 解决local variable 'has_fav_course' referenced before assignment(Python)
  18. python函数的应用
  19. 百度输入法重大BUG:内存占用随用户词库增大而暴涨
  20. linux lotus notes实例,在Ubuntu 6.10 系统中安装Lotus Notes 7详细图解

热门文章

  1. mac 完全卸载python
  2. python爬虫快速入门
  3. 使用vite脚手架创建vue项目
  4. codePointAt()方法
  5. webpack5使用core-js按需兼容js “presets“: [ [“@babel/preset-env“, { “useBuiltIns“: “usage“, “corejs“:
  6. 聊聊涛哥是如何赚到第一个10W的?
  7. 树莓派+二自由度云台制作智能小车(三)——小车运动+简单的自动避障
  8. 仿qq气泡通知粘连效果
  9. sublime的正则替换
  10. remote: You are not allowed to push code to this project.unable to access .. 403