2015-09-10 2 views
1

Предположим, у меня есть файл с некоторыми шестигранных цветов:Совпадение все полутоновые цвета в шестнадцатеричном

.. #101010 .. match 
.. #a2a2a2 .. match 
.. #abcd10 .. do not match 
.. #000000 .. match 
.. #111222 .. do not match 
.. #ffffff .. match 
.. #3b3b3b .. match 
.. #121012 .. do not match 
.. #fff  .. match 
.. #aba  .. do not match 

Как выбрать все HEX-цвета, которые red, green и blue значения являются одинаковыми?

Заранее спасибо.

ответ

5

Вы можете использовать это регулярное выражение:

#([a-fA-F\d]{1,2})\1{2}\b 

RegEx Demo

\1 является обратная ссылка первых 1 или 2 цифры после #

RegEx Распад:

#     # Match a literal hash or # 
([a-fA-F\d]{1,2}) # Match 1 or 2 hex digit and group it as captured group #1 
\1{2}    # Match 2 more occurrences of back-reference \1 
\b     # Assert a word boundary 
1

Только что пробовал это в vim:

([0-9a-f] [0-9a-f]) \ 1 \ 1

Смежные вопросы