Я пытаюсь найти определенную строку с RegEx. Я хочу найти «что-то начинающееся с« f »и заканчивающееся первым 2» (оно должно содержать только одно 2). В этом примере я хочу найти result = "fdba12"
, но код ниже дает мне 'fdba12312'
(содержащий два 2). Как я могу остановить поиск, когда сразу найду 2?Регулярное выражение Вывод Остановить поиск в первом случае
import re
string2 = "asfdba12312 sssdr1 12şljş1 kf"
t = re.findall(r'[f][\w]*[2]', string2)
print(t)
Или 'f [^ \ W2] * 2'. –
[Python non-greedy regexes] (http://stackoverflow.com/q/766372) –