如何编写正则匹配固定键的键值对并忽略冒号右侧取值内容
解决方案
你原来的正则仅用来匹配任意被引号包裹的字符串,因此只能匹配到"Settings Icon"片段,没有覆盖冒号及行匹配逻辑,调整后的正则如下:
场景1:匹配完整行(只要前缀符合就判定整行命中)
^"Settings Icon":.*$
如果需要兼容键名两侧为单引号的情况,使用兼容版本:
^(['"])Settings Icon\1:.*$
正则说明:
^锚定行首位置,避免匹配到行中间出现的Settings Icon字符串(['"])捕获开头的引号类型(单/双引号)Settings Icon匹配固定键名\1引用开头捕获的引号,保证前后引号类型一致:匹配键名后的固定冒号.*匹配冒号后任意长度的内容(也就是你需要忽略的右侧部分)$锚定行尾
场景2:仅匹配前缀部分(不需要包含右侧内容)
如果只要提取"Settings Icon":这部分前缀,去掉末尾的.*$即可:
^(['"])Settings Icon\1:
你给出的3个示例字符串都可以被上述正则匹配命中。
内容的提问来源于stack exchange,提问作者IamGrooot
相关产品推荐
相关产品推荐

