Регулярное выражение для удаления специальных символов из начала или конца строки - PullRequest
1 голос
/ 28 сентября 2019

Я хочу удалить специальные символы из начала или конца строки,

@Can't&

Используя регулярное выражение, и я устал,

`[^\w\s]`

Но это регулярное выражение удаляет ' который находится внутри слова и возвращается ниже слова,

Cant 

Кажется, я не могу обернуться вокруг этого, любые идеи будут высоко оценены.

Ответы [ 3 ]

3 голосов
/ 28 сентября 2019

Можно упростить так:

  res = re.sub(r'^\W+|\W+$', '', txt)
2 голосов
/ 28 сентября 2019

Используйте следующий подход (с использованием чередования регулярных выражений ..|..):

import re

s = "@Can't&"
res = re.sub(r'^[^\w\s]+|[^\w\s]+$', '', s)
print(res)    # Can't
0 голосов
/ 28 сентября 2019

Вы можете просто добавить исключение для ' в выражении:

[^\w\s']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...