我需要某种颜色的正则表达式,可以这样描述:
以#开头 然后是 3 个相同的十六进制字符对(0-9、a-f、A-F)。 aA 和 Aa 也是同一对
现在我有 #(([0-9A-Fa-f]){2}){3}
如何为相同的十六进制字符对创建正则表达式?
匹配字符串的一些示例: “#FFFFFF”, “#000000”, “#aAAAaaA”, “#050505”, “###93#0b0B0b1B34”
像“#000100”这样的字符串不应该匹配
最佳答案
使用re.search()
函数:
import re
s = '#aAAaaA'
match = re.search(r'#([0-9a-z]{2})\1\1', s, re.I)
result = match if not match else match.group()
print(result)
<小时/>
\1
- 指向第一个括号组(...)
re.I
- IGNORECASE 正则表达式标志
关于python regex 3 相同的 [0-9A-Fa-f] 对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47200139/