Я неплохо знаком с регулярным выражением, но это сложно. Мне нужно найти такие примеры из оператора SQL case:
когда col_name = 'это может быть слово или предложение'
Я могу сопоставить вышеприведенное, когда это всего одно слово, но когда это больше чем одно слово, это не работает.
s = """when col_name = 'a sentence of words'"""
x = re.search("when\s(\w+)\s*=\s*\'(\w+)", s)
if x:
print(x.group(1)) # this returns "col_name"
print(x.group(2)) # this returns "a"
Я хочу, чтобы группа (2) возвратила "предложение слов", но я просто получаю первое слово. Эта часть может быть одним словом или несколькими. Как это сделать?
Когда я добавляю второй \ ', тогда я не получаю совпадения:
x = re.search("when\s(\w+)\s*=\s*\'(\w+)\'", s)