Найти - Пользователи
Полная версия: проблема с регулярками
Начало » Python для новичков » проблема с регулярками
1
gelius
				rex = re.compile(r'(slovo\+(\'))(.*?)(\')')
				ss = str([d[2] for d in rex.findall(realbody)])
				print ss
отдает:
['&s=']
Дальше ннужно ставить только
&s=
ss = str(ss[0])
отдало
[
Внутри могут быть разные комбинации из разного количества символов.
Например:
['&rrr=']
py.user.next
Исходный текст приведи и то, что нужно из него получить в итоге.
gelius
Погоди, а есть разница? Просто исходный текст, и то что нужно получить, может отличаться.
Я уже получил
['&s=']
и хочу
&s=
Как пример исходного текста:
slovo+'&s='+taramparam;
Получить нужно:
&s=
elisk
import re
#  "slovo+'&s='+taramparam;"
w = "slovo"+'&s='+"taramparam;"
rex = re.compile(r"&.+=")
ss = rex.findall(w)
print(ss)          # ['&s=']
ss = ss[0].replace("'", "")
print(ss)          #  &s=
py.user.next
gelius
Я уже получил
Там просто непонятно, зачем тебе столько скобок в регулярном выражении. Перегруженность скобками говорит о том, что ты точно не знаешь, как составлять регулярные выражения. А если не знаешь, как составлять, то повышается вероятность того, что не знаешь и как искать (может, там вообще регулярки не нужны).

gelius
Как пример исходного текста:
slovo+'&s='+taramparam;
Получить нужно:
&s=
>>> import re
>>> 
>>> s = """slovo+'&s='+taramparam;"""
>>> 
>>> re.search(r"'([^']*)'", s).group(1)
'&s='
>>>
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