Maison  >  Article  >  développement back-end  >  Exemples de remplacement de texte à l'aide d'expressions régulières en Python

Exemples de remplacement de texte à l'aide d'expressions régulières en Python

Y2J
Y2Joriginal
2017-04-21 15:06:141589parcourir

Cet article présente principalement la méthode Python utilisant des expressions régulières pour réaliser le remplacement de texte. Il analyse les étapes spécifiques et les précautions d'utilisation associées de Python utilisant des expressions régulières pour implémenter le remplacement de texte sous forme d'exemples. Les amis dans le besoin peuvent s'y référer.

La programmation client 2D est en un sens une organisation matérielle. Par conséquent, l'organisation du matériel image nécessite souvent un traitement par lots. Python doit être le meilleur choix. Qu'il s'agisse de win/linux/mac, il a un environnement d'exploitation simple. 🎜>

Donnez deux

scénarios d'application :

① S'il n'est pas dans un dossier, insérez le nom du dossier devant

② Ajoutez un préfixe à tous les noms de fichiers

Regardons directement le code :


# encoding: UTF-8
import re
# 将正则表达式编译成Pattern对象
p = re.compile(r&#39;(?P<folder>(\w+/)*)(?P<filename>\w+\.png)&#39;)
# 使用Pattern匹配文本,获得匹配结果,无法匹配时将返回None
#match = pattern.match(&#39;<key>xxx/duobaojiemian_L/yangpizi.png</key>&#39;)
the_str = """<key>XXXX/duobaojiemian2222_L/duobaojiemian_L/yangpizi.png</key>
 <key>yangpizi2.png</key>
 <key>yangpizi3.png</key> """
for m in p.finditer(the_str):
 # 使用Match获得分组信息
 print m.groupdict()
print &#39;-------------------------------&#39;
#f = lambda m: m.group().find(&#39;XXXX/&#39;) == -1 and &#39;XXXX/&#39;+m.group() or m.group()
def f(m):
 s = m.group()
 return s.find(&#39;XXXX/&#39;) == -1 and &#39;XXXX/&#39;+s or s
def f2(m2):
 d = m2.groupdict()
 return d[&#39;folder&#39;]+&#39;the_&#39;+d[&#39;filename&#39;]
print p.sub(f2, the_str)
Il y a quelques choses à expliquer à propos des expressions régulières

①. Les expressions régulières de Python utilisent cette syntaxe si la capture doit être regroupée (?P1857bcd0c066bcf2ee4f1df791e77b81 correspondant à l'expression régulière)

② re.compile est utilisé pour compiler l'expression régulière et l'objet Return

.

③. p.finditer renvoie tous les itérateurs correspondants

④ transmet les éléments correspondants dans la fonction de rappel et remplace le texte

par la valeur de retour ⑤. , vous pouvez utiliser le nom du groupe pour obtenir la valeur correspondante

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn