[英]How to find two consecutive repeating characters in RGB using Regex?
我试图找到所有具有 2x3 个连续数字的 RGB 数字。 我的意思是这样的数字:
\#00FF11
\#66AA44
\#FF0000
我试过写这个:
\b#(([0-9a-zA-Z])\1){3}\b
但这不起作用。
问题出在哪儿? 我可能会说,问题出在\\1
,因为这是我不太确定的唯一部分。
\\1
模式是对捕获组 1 的反向引用,即(([0-9a-zA-Z])\\1)
。 您实际上想要参考 Capturing group 2,因此需要\\2
而不是\\1
。
需要注意的是\\b#
将只匹配#
是前面有一个字字符(字母,数字或_
)。 您需要在开头使用非单词边界\\B
。
要匹配十六进制字符, [A-Fa-f]
比[A-Za-z]
更可取。
用
@"\B#(?:([0-9a-fA-F])\1){3}\b"
使用逐字字符串文字,您无需在此处重复转义反斜杠。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.