Регулярные выражения Python и метасимволы

Существует переменная, которая:

line="s(a)='asd'"

Я пытаюсь найти часть, которая включает в себя "s()".

Я пытался с помощью:

re.match("s(*)",line)

Но похоже, что он не умеет искать символы, включающие ()

Есть ли способ найти его и напечатать на python?

1 ответ

Ваше регулярное выражение является проблемой здесь.

Ты можешь использовать:

>>> line="s(a)='asd'"
>>> print re.findall(r's\([^)]*\)', line)
['s(a)']

RegEx Breakup:

s     # match letter s
\(    # match literal (
[^)]* # Using a negated character class, match 0 more of any char that is not )
\)    $ match literal (
  • r используется для необработанной строки в Python.
Другие вопросы по тегам