Page 59 - 6734
P. 59
#{'name2': 'W', 'name1': 'H'}
print(re.findall('o', s)) # усі відповідності, що не
перекриваються
#['o', 'o']
for mo in re.finditer('o',s): # те саме, але ітератор
print(mo.group(0))
#o
#o
print(re.split(' ', s)) # розділює за шаблоном
#['Hello', 'World']
print(re.sub(' ','_',s)) # заміна за шаблоном
#Hello_World
print(re.subn(' ','_',s)) # або показувати кількість
зроблених замін
#('Hello_World', 1)
print(re.sub(r'"(.*?)"',r'<a href="\g<1>">\g<1></a>',
r'"dir\file.html"')) # заміна з використанням груп
(\g<1>)
#<a href="dir\file.html">dir\file.html</a>
def repl(mo): # повертає новий рядок, яким замінює
re.sub
path=mo.group(1) # рядок знайденої групи
return "["+path+"]"
pattern=re.compile(u'<img src="(.*?)" />') # що
заміняти
print(re.sub(pattern, repl, u'***<img src="1.png"
/>***')) # замінити все
#***[1.png]***
58