2015-04-13 5 views
0

Я не могу понять, как получить «любой текст» из строки any text [monkey bars][fancy swing][1002](special)не может найти подстроку в регулярных выражениях

после многих попыток я сделал (.*)[\(*]|[\[*], но это не похоже на работу очень хорошо

Я использую регулярное выражение двигатель питона

+0

Можете ли вы показать нам, что код, который вы сейчас используете? –

+3

Если ваш реальный сценарий подобен этому, регулярное выражение может быть излишним. – keyser

ответ

0

Используйте регулярное выражение ^[^[]*, чтобы соответствовать все до первого [.

+0

это сработало очень хорошо, спасибо – user3197924

+0

@ user3197924 не забывайте поднимать и принимать ответ – rednaw

0

Попробуйте что-то вроде:

import re 

str1 = "any text [monkey bars][fancy swing]" 

re1 = re.compile("(.*) \[.*") 
m = re1.match(str1) 

print(m.group(1)) 

Это будет печатать any text

Вы также можете сделать что-то вроде этого:

import re 

str1 = "any text [monkey bars][fancy swing]" 

re1 = re.compile("(.*) \[(.*)\]\[(.*)\]") 
m = re1.match(str1) 

print(m.groups()) 

Это напечатает ('any text', 'monkey bars', 'fancy swing')

Смежные вопросы