Форум сайта python.su
Есть html такого типа:
<html> <head> <body> var unit = new Array(); unit[0] = '642a6|7af7a569|arr1|543438'; unit[1] = 'f643d|183e97e6|arrnew|423324'; unit[2] = 'da0fa|e004bd72|newarr|423432'; ...... unit[n] = 'da0fa|e004bd72|rrrrr|243232'; </body> </html>
543438,423324,423432,.....,243232
Офлайн
a="...." print(re.findall(r"\|(\d+)';",a))
Офлайн
Да, отработало.
А реально загнать
642a6|7af7a569|arr1|543438
f643d|183e97e6|arrnew|423324
da0fa|e004bd72|newarr|423432
......
da0fa|e004bd72|rrrrr|243232
Офлайн
ss100sДа.
А реально загнать в массив?
r"\(|(\d+))+';"
Отредактировано doza_and (Март 1, 2016 06:59:07)
Офлайн
Не понятно как вырезать то, что можно скинуть в JSON.
Пытаюсь получить строки вида
'642a6|7af7a569|arr1|543438'
print(re.findall(r"unit[\d+](.*?)';",a))
Офлайн
Это с числами в квадратных скобках
>>> import re >>> >>> text = """ ... <html> ... <head> ... <body> ... var unit = new Array(); ... unit[0] = '642a6|7af7a569|arr1|543438'; ... unit[1] = 'f643d|183e97e6|arrnew|423324'; ... unit[2] = 'da0fa|e004bd72|newarr|423432'; ... ...... ... unit[n] = 'da0fa|e004bd72|rrrrr|243232'; ... </body> ... </html> ... """ >>> >>> re.findall(r"unit\[\d+\] = '([^']+)'", text) ['642a6|7af7a569|arr1|543438', 'f643d|183e97e6|arrnew|423324', 'da0fa|e004bd72|newarr|423432'] >>>
>>> import re >>> >>> text = """ ... <html> ... <head> ... <body> ... var unit = new Array(); ... unit[0] = '642a6|7af7a569|arr1|543438'; ... unit[1] = 'f643d|183e97e6|arrnew|423324'; ... unit[2] = 'da0fa|e004bd72|newarr|423432'; ... ...... ... unit[n] = 'da0fa|e004bd72|rrrrr|243232'; ... </body> ... </html> ... """ >>> >>> re.findall(r"unit\[.+?\] = '([^']+)'", text) ['642a6|7af7a569|arr1|543438', 'f643d|183e97e6|arrnew|423324', 'da0fa|e004bd72|newarr|423432', 'da0fa|e004bd72|rrrrr|243232'] >>>
Отредактировано py.user.next (Март 2, 2016 11:44:28)
Офлайн