Найти - Пользователи
Полная версия: не работает регексп
Начало » Python для экспертов » не работает регексп
1
Casufi
Вот кусок скрипта
expresionvalue = re.compile("(^*\.jpg$|^*\.gif$)")
if expresionvalue.search(somestring):
При выполнении скрипта питон відает ошибку
    raise error, v # invalid expression
sre_constants.error: nothing to repeat
Подскажите пожалуйста, чем ему не нравится выражение ^*\.jpg$ или ^*\.gif$ , хотя строку
expresionvalue = re.compile("(\.jpg$|\.gif$)")
он прекрасно понимает
bialix
^ обозначает самое-самое начало строки. вынеси его за скобки, должно помочь.
Casufi
bialix
^ обозначает самое-самое начало строки.
Это я знаю, но записи вида re.compile(“^*\.jpg$”) и re.compile(“^*\.jpg”) тоже не проходят и запись вида expresionvalue = re.compile(“^*(\.jpg$|\.gif$)”) вызывает туже ошибку.
Меня терзают смутные сомнения, что он патологически не воспринимает символ начала строки
Александр Кошелев
Casufi
Меня терзают смутные сомнения, что он патологически не воспринимает символ начала строки
патология в другом;)
зачем * после ^ ?
Casufi
Casufi
Меня терзают смутные сомнения, что он патологически не воспринимает символ начала строки
Сглупил, нужно было точку поставить перед звездочкой
Casufi
Подскажите пожалуйста, как теперь к этому регекспу
re.compile("^.*((\.jpg$)|(\.gif$))")
добавить условие исключающее строки, которые содержат последовательность символов
_tn
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB