⊗pyPmREMSP 58 of 129 menu

Групи в низ за замяна в Python

При работа с метода sub, ако нещо трябва да се постави в група в регулярния израз, то в низа за замяна може да вмъкнете съдържанието на тази група като напишете двойна наклонена черта \ и номера на групата. Например, \1 - първа група, \2 - втора група и така нататък.

Защо е нужно това и как да го използвате нека да разгледаме с примери.

Пример

Нека да намерим всички числа и вместо тях да вмъкнем същите числа, но в кръгли скоби. За това всички намерени числа ще заменим с тях самите, но в скоби:

txt = '1 23 456 xax' res = re.sub('(\d+)', '(\1)', txt) print(res)

В резултат в променливата ще се запише следното:

'(1) (23) (456) xax'

Пример

Нека да намерим всички низове, представляващи числа с 'x' около тях и да заменим тези числа със себе си, но със '!' знаци около:

txt = 'x1x x23x x456x xax' res = re.sub('x(\d+)x', '!\1!', txt) print(res)

В резултат в променливата ще се запише следното:

'!1! !23! !456! xax'

Пример

Нека да решим следната задача: даден е низ 'aaa@bbb ccc@ddd' - букви, след това @, след това букви. Трябва да разменим местата на буквите в подниза 'aaa@bbb' преди '@' и след:

txt = 'aaa@bbb ccc@ddd' res = re.sub('([a-z]+)@([a-z]+)', '\2@\1', txt) print(res)

В резултат в променливата ще се запише следното:

'bbb@aaa ccc@ddd'

Практически задачи

Даден е низ:

txt = '12 34 56 78'

Разменете цифрите във всички двуцифрени числа.

Даден е низ с дата:

txt = '31.12.2025'

Преобразувайте тази дата във '2025.12.31'.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне