我正在尝试查找所有具有 2x3 连续数字的 RGB 数字。我的意思是这种数字:\#00FF11
\#66AA44
\#FF0000我试过写这个:\b#(([0-9a-zA-Z])\1){3}\b但这不起作用。问题出在哪里?我可能会说,问题出在 . 附近\1,因为这是我唯一不太确定的部分。
1 回答
jeck猫
TA贡献1909条经验 获得超7个赞
该\1
模式是对捕获组 1 的反向引用,即(([0-9a-zA-Z])\1)
. 您实际上想参考 Capturing group 2,因此需要\2
而不是\1
.
请注意,\b#
只会匹配#
前面带有单词 char(字母、数字或_
)的字符。您需要在开头使用非单词边界,\B
.
要匹配十六进制字符,[A-Fa-f]
最好比[A-Za-z]
.
利用
@"\B#(?:([0-9a-fA-F])\1){3}\b"
使用逐字字符串文字,您不需要在此处使用双转义反斜杠。
- 1 回答
- 0 关注
- 110 浏览
添加回答
举报
0/150
提交
取消