Я пытаюсь проверить, содержит ли моя строка какое-то регулярное выражение.Python Regex: "re.match()" работает иначе, чем "re.sub()" для regex
Странная вещь в том, что в то время как re.sub()
найдет регулярное выражение и заменить его, re.match()
не возвращает никаких результатов ...
Вот мое использование:
re.match(): - не пытается соответствовать шаблону ,\s*param2
- ничего возвращается
>>> str = 'func(param1, param2)'
>>> str
'func(param1, param2)'
>>> results = re.match(r',\s*param2', str)
>>> print(results)
None
re.sub(): - Успешно повторно размещая ту же картину ,\s*param2
на «привет»
>>> str = 'func(param1, param2)'
>>> str
'func(param1, param2)'
>>> new_str = re.sub(r',\s*param2', ' hello', str)
>>> new_str
'func(param1 hello)'
Как я могу соответствовать шаблону ,\s*param2
без подставив его?
're.match' соответствует началу строки. Вы пробовали 're.search'? –
Является ли 're.search' таким же, как' re.match', за исключением «начала»? – SomethingSomething
Работает! Спасибо! I – SomethingSomething