Питон убрать все знаки препинания

2 простых способа удалить знаки препинания в строках Python

Прежде чем углубиться в концепцию удаления знаков препинания, давайте сначала разберемся с ситуациями, в которых нам нужно удалить знаки препинания.

Когда дело доходит до получения значений данных из API или веб-скрейпинга, мы часто сталкиваемся со значениями данных в файлах JSON, которые содержат буквенно-цифровые строки, а также знаки препинания. Это делает всю строку немного неформатированной.

Это те случаи когда мы чувствуем необходимость устранить или удалить знаки препинания в строке.

Давайте теперь посмотрим на различные способы удаления знаков препинания из String.

1. Удалите знаки препинания с помощью библиотеки регулярных выражений.

Python предоставляет нам библиотеку регулярных выражений для работы со всеми видами регулярных выражений и управления ими.

Нам нужно импортировать приведенную ниже библиотеку для работы с регулярным выражением —

Мы будем использовать re.sub(pattern, replacement, original_string) для удаления знаков препинания.

re.sub(pattern, replacement, original_string) 
  1. pattern: знаки препинания или шаблон выражений, которые мы хотим заменить.
  2. replacement: строка, которая будет заменять шаблон.
import re inp_str = "Hello! Folks, we are here to learn, grow and glow!!" print("Original string:\n" + inp_str) opt = re.sub(r'[^\w\s]','', inp_str) print("String after deletion of punctuation marks:\n" + opt) 

Кроме того, мы использовали метод re.sub() для замены знаков препинания заменой, предусмотренной как ‘ ‘, то есть пробелом.

Original string: Hello! Folks, we are here to learn, grow and glow!! String after deletion of punctuation marks: Hello Folks we are here to learn grow and glow 

2. Использование цикла Python для удаления знаков препинания.

Циклы Python также можно использовать для удаления знаков препинания из строки, как показано ниже:

  1. Сохраните все знаки препинания в строке.
  2. Создайте цикл for и создайте оператор if для каждой итерации так, чтобы при обнаружении символа пунктуации он заменялся пробелом.

Попробуем разобраться в описанном выше методе на примере.

import re inp_str = "Hello! Folks, we are here to learn, grow and glow!!" print("Original string:\n" + inp_str) marks = '''!()-[]<>;?@#$%:'"\,./^&*_''' for x in inp_str: if x in marks: opt_str = inp_str.replace(x, "") print("String after deletion of punctuation marks:\n" + opt_str) 
Original string: Hello! Folks, we are here to learn, grow and glow!! String after deletion of punctuation marks: Hello Folks, we are here to learn, grow and glow 

Источник

Читайте также:  Generate getter and setter java
Оцените статью