如何用Python正则表达式将". [A-Z]"中的". "替换为".\n"
在Python中替换特定模式的文本:将
. [A-Z]中的. 改为.\n 你可以用Python的re模块实现这个需求,核心思路是用正则表达式捕获目标模式中的大写字母,替换时保留该字母,仅修改. 为.\n。
实现代码
import re # 输入文本 input_text = """Oligocatal Magnesio 20 Fiale Glucosate 2MlSpecificheOligocatal Magnesio 20 Fiale Glucosate 2Ml. Le immagini dei prodotti sono puramente indicative e potrebbero pertanto non essere perfettamente rappresentative del packaging o comunque differire in alcune parti, delle caratteristiche del prodotto, differendo per colori, dimensioni o contenuto. Alcune decorazioni, confezioni regalo e oggetti inseriti e simili potrebbero considerarsi non corrispondenti nelle immagini ai fini della presentazione del prodotto non saranno spediti negli ordini. Le denominazioni dei prodotti, gli ingredienti e le percentuali indicati nelle descrizioni sono puramente indicativi, potrebbero subire variazioni o aggiornamenti da parte delle aziende produttrici. Non è possibile adeguarsi in tempo reale a tali aggiornamenti, le foto e le informazioni tecniche dei prodotti inseriti su () possono differire da quelle riportate in etichetta o in altro modo diffuse dalle aziende produttrici. L'unico elemento di identificazione risulta essere il codice ministeriale MINSAN. La farmacia () non garantisce la veridicità e l'attualità delle informazioni pubblicate e declina ogni responsabilità in ordine ad eventuali errori, omissioni o mancati aggiornamenti delle stesse. () non si assume responsabilità per danni di qualsiasi natura che possano derivare dall'accesso alle informazioni pubblicate.. FarmaciaUno: Bellezza & Salute!""" # 执行替换 output_text = re.sub(r'\. ([A-Z])', r'.\n\1', input_text) # 输出结果 print(output_text)
代码说明
- 正则模式
r'\. ([A-Z])':\.:转义匹配英文句号(因为句号在正则中是通配符,必须转义):匹配空格([A-Z]):捕获一个大写英文字母,存入分组1
- 替换字符串
r'.\n\1':.\n:将原有的.替换为.+换行符\1:引用之前捕获的大写字母,确保该字母保留在换行后的开头
运行代码后,输出结果就会和你期望的格式一致。
内容的提问来源于stack exchange,提问作者Tanveer Mohammad
相关产品推荐
相关产品推荐

