#python #regex
#питон #регулярное выражение
Вопрос:
Я новичок в regrex и пытаюсь разобраться в этом.
Как я могу написать строку regrex, которая соответствует строке тогда и только тогда, когда строка содержит только определенные разрешенные символы, скажем, заглавные буквы ‘A’, ‘B’, ‘C’, ‘D’ и ‘E’, т.е. Она должна соответствовать ‘A’, ‘ABC’, ‘CEA’, ‘ABCEACBBCAED?, Но не ‘AGV’, ‘AcD’, ‘a’ и т. Д. (?)
re.search(some_regex_string, some_string)
Комментарии:
1. Вы можете использовать
[A-E]
2. @PushpeshKumarRajwanshi
[A-E]
все равно будет сопоставлять частичные строки, содержащие кластеры символов в диапазоне [A-E] . Вам нужно будет указать границы слов, по крайней мере,b[A-E] b
3. @Filip: вам нужно использовать привязки начала / конца с этим регулярным выражением. Это регулярное выражение, которое я дал, было идеей о том, как разрешить
A
E
символы. Вам нужно написать регулярное выражение как^[A-E] $
, которое будет соответствовать только строке, содержащей только и толькоA
E
символы.
Ответ №1:
Вам нужно использовать это регулярное выражение для сопоставления с образцом данных в вашем сообщении.
^[A-E] $
Демонстрация регулярных выражений
Если у вас есть строка большего размера, в которой вы хотите сопоставлять только токены, которые имеют только A
Z
символы, то в этом случае вы можете использовать границы слов вокруг регулярного выражения следующим образом,
b[A-E] b
Которая будет соответствовать только строкам, содержащим A
E
символы to в строке.
Демонстрация для сопоставления предполагаемых строк в строке большего размера