⊗pyPmREMl 50 of 129 menu

Višelinijskost u regularnim izrazima Python-a

Regularni izrazi pri radu sa višelinijskim stringovima imaju svoje specifičnosti. Hajde da ih razumemo na primeru sledećeg stringa, koji sadrži obične karaktere, karaktere preloma linije i tabulacije:

txt = '''111 222 333 444'''

Prelom linije

Karaktere preloma linije možemo uhvatiti pomoću komande '\n':

res = re.sub('\n', '!', txt) print(res)

Kao rezultat ispisaće se sledeći string (razmaci između linija su tabulacije):

'111! 222! 333! 444'

Tabulacija

Karaktere tabulacije možemo uhvatiti pomoću komande '\t':

res = re.sub('\t', '!', txt) print(res)

Rezultat izvršavanja koda:

''' !111 !222 !333 !444 '''

Rad tačke

Komanda '.' za višelinijski string ne hvata karaktere preloma linije:

res = re.sub('.', '!', txt) print(res)

Rezultat izvršavanja koda:

''' !!! !!!! !!!! !!!! '''

Bilo koji karakter

Da bismo uhvatili sve karaktere u višelinijskom stringu, koristi se pametan trik u vidu kombinacije [\s\S]. Takva konstrukcija će pronaći sve obične karaktere i sve prelome linija:

res = re.sub('[\s\S]', '!', txt) print(res)

Rezultat izvršavanja koda:

'!!!!!!!!!!!!!!!!!!'

Dolar

Komanda ' u višelinijskom režimu će hvatati kraj svake linije:

res = re.sub(' ', '!', txt) print(res)

Rezultat izvršavanja koda:

''' 111! 222! 333! 444! '''

Praktični zadaci

Dat je string:

''' abc def ghi jkl '''

Napišite regularni izraz koji će od ovog stringa napraviti sledeći:

''' abc! def! ghi! jkl! '''

Dat je string:

''' abc def ghi jkl '''

Napišite regularni izraz koji će od ovog stringa napraviti sledeći:

''' ! abc ! def ! ghi ! jkl '''

Dat je string:

''' abc def ghi jkl '''

Napišite regularni izraz koji će od ovog stringa napraviti sledeći:

'''! abc def ghi jkl !'''

Dat je string:

''' abc def ghi jkl '''

Napišite regularni izraz koji će od ovog stringa napraviti sledeći:

'''! ! abc ! def ! ghi ! jkl !'''

Dat je string:

''' abc def ghi jkl '''

Napišite regularni izraz koji će od ovog stringa napraviti sledeći:

'''! abc! def! ghi! jkl! !'''

Dat je string:

''' abc def ghi jkl '''

Napišite regularni izraz koji će od ovog stringa napraviti sledeći:

''' !abc !def !ghi !jkl '''
Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij