Python: reemplazo de cadena - replace (), teaslate (), re.sub

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.maketransse 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个

 

 

 

 

 

Supongo que te gusta

Origin blog.csdn.net/weixin_38676276/article/details/107515545
Recomendado
Clasificación