Граници на думи в регулярни изрази на Python

С помощта на командата '\\b' може да се обърнем към границата на дума, а с помощта на командата '\B' или '\\B' - не към границата. Обърнете внимание на това, че в случая на дефиниране на граници на думи в Python работи екраниране строго с помощта на две наклонени черти, въпреки че за други команди се допуска една наклонена черта. Нека да разгледаме работата на тези команди с примери.

Пример

Нека да обградим всяка дума със символ '!':

pythontxt = 'aaa aaa aaa'
print(re.sub('\\b', '!', txt))

Резултат от изпълнението на кода:

python'!aaa! !aaa! !aaa!'

Пример

Нека добавим символ '!' в празните пространства между буквите:

pythontxt = 'aaa aaa aaa'
print(re.sub('\\B', '!', txt))

Резултат от изпълнението на кода:

python'a!a!a a!a!a a!a!a'

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

Задание 1

Даден е низ:

pythontxt = 'abc def xyz'

Напишете регулярен израз, който ще превърне този низ в следния:

python'#abc# #def# #xyz#'
Задание 2

Даден е низ:

pythontxt = 'abc def xyz'

Напишете регулярен израз, който ще превърне този низ в следния:

python'a+b+c d+e+f x+y+z'