Uno, reemplazar ()
replace()
El método reemplaza la vieja (cadena antigua) con la nueva (nueva cadena) en la cadena. Si se especifica el tercer parámetro como máximo, el reemplazo no excederá el tiempo máximo
str.replace(old, new[, max])
estilo:
a = 'Hello,world!'
print(a.replace('l','Q')) # 把l换成Q
print(a.replace('abcdefghi','0123456789')) # 想把字符串中的a到i替换成0-9
print(a.replace('world','apple')) # 把word替换为apple
resultado:
HeQQo,worQd!
Hello,world! # 很明显,第二个没有执行(或者说没有替换)
Hello,apple!
Razón: la replace()
función puede reemplazar un solo carácter en una cadena y también puede reemplazar caracteres consecutivos, pero no puede generar un mapa de reemplazo de caracteres
Dos, traducir ()
translate()
La función también viene con python. La diferencia con la función replace () es que aquí str.maketrans
se usa una función para crear una tabla. Puede usar varios parámetros, pero requiere tres Argumentsstr.
maketrans('','',del)
El primer parámetro es el carácter que se reemplazará, el segundo parámetro es el carácter que se reemplazará y el tercer parámetro es el carácter que se eliminará
utilizar:
stu_name = "学生1"
stu_name.translate(str.maketrans('', '', digits))
print(stu_name) # 输出: 学生
import string
a = 'Hello,world!'
remove = string.punctuation # 返回所有标点符号
table = str.maketrans('abcdefgh','01234567',remove)
print(a.translate(table)) # 输出:H4lloworl3
Tres, re.sub ()
Esta es una función en la biblioteca re, y su prototipo esre.sub(pattern, repl, string, count)
El primer parámetro es el parámetro que se reemplazará por la expresión regular, el segundo parámetro es la cadena reemplazada, el tercer parámetro es la cadena de entrada y el cuarto parámetro se refiere al número de reemplazos. El valor predeterminado es 0, lo que significa que se reemplazan todas las coincidencias.
ejemplo:
import re
a = 'Hello,world! HaHa'
print(re.sub(r'[A-Z]', '8', a)) # 8ello,world! 8a8a
print(re.sub(r'[A-Z]', '8', a, 2)) # 8ello,world! 8aHa 替换前2个