java - ENUM 正则表达式不区分大小写
问题描述
我有一个枚举正则表达式 ^(TECHNICAL|SUPPORT|ADMINISTRATIVE|BILLING|OTHER),我想让它不区分大小写。
我尝试了几种方法,以此作为参考,但没有任何效果 Regex: a(?i)bc Matches: a # match the character 'a' (?i) # enable case insensitive matching b # match the character 'b' or 'B' c # 匹配字符 'c' 或 'C'
正则表达式:a(?i)b(?-i)c 匹配:a # 匹配字符 'a' (?i) # 启用不区分大小写的匹配 b # 匹配字符 'b' 或 'B' (?-i) # 禁用不区分大小写的匹配 c # 匹配字符 'c'
正则表达式:
a(?i:b)c 匹配:a # 匹配字符 'a' (?i: # 开始非捕获组 1 并启用不区分大小写的匹配 b # 匹配字符 'b' 或 'B' ) # end non-capture group 1 c # 匹配字符'c'
解决方案
要使 RegExp 不区分大小写,只需(?i)
在开头添加:
boolean res = "techNICAL".matches("(?i)^(TECHNICAL|SUPPORT|ADMINISTRATIVE|BILLING|OTHER)$");
输出:
真的
regex101.com上的演示
推荐阅读
- css - 存在溢出时如何防止网格布局中的最后一列/行消失?
- python - 在 tkinter 中将列表框变量添加到标签
- swift - 自定义 AVCapturePhoto 对象的像素缓冲区
- flutter - 哪个对性能更好 && #memory
- sql - 如果在 Event_Code 列中为相同的 Device_ID 列出了 5 个或更多相同值,如何编写返回 Device_ID 列中所有值的查询
- java - 工作日 WSDL 身份验证设置 - JAX_WS Java
- ruby - Codility 错误:无效的结果类型,需要整数,找到 NilClass
- python - Python - 合并数据框/追加到列上
- node.js - 无法与 node.js 服务器通信
- pandas - 根据教程重塑模型的真实世界数据