Границы слов в регулярках Python
С помощью команды '\\b' можно
обратиться к границе слова, а с помощью
команды '\B' или '\\B' - не
к границе. Обратите внимание на то, что в
случае определения границы слов в Python
работает экранирование строго с помощью
двух слешей, хотя для других команд
допускается один слеш. Давайте посмотрим
работу этих команд на примерах.
Пример
Давайте обернем каждое слово в символ
'!':
txt = 'aaa aaa aaa'
print(re.sub('\\b', '!', txt))
Результат выполнения кода:
'!aaa! !aaa! !aaa!'
Пример
Давайте добавим символ '!' в
промежутки между буквами:
txt = 'aaa aaa aaa'
print(re.sub('\\B', '!', txt))
Результат выполнения кода:
'a!a!a a!a!a a!a!a'
Практические задачи
Дана строка:
txt = 'abc def xyz'
Напишите регулярку, которая сделает из этой строки следующую:
'#abc# #def# #xyz#'
Дана строка:
txt = 'abc def xyz'
Напишите регулярку, которая сделает из этой строки следующую:
'a+b+c d+e+f x+y+z'