簡體   English   中英

python用“。\\ n *”代替“。*”。 ”和“。\\ n”

[英]python replace “.* ” with “.\n*” except for “. ” and “.\n”

我在文件中有一些行,例如

blabla.blabla

我想要這樣的結果:

blabla.
blabla

忽略已經有我想要的結果的情況,或

blabla. blabla

請幫我。 我認為我必須利用re.sub函數,但是我不知道如何處理它。

先感謝您!

這是一個點,后面沒有空格字符(包括換行符):

(\.)(?!\s)

將其替換為\\1\\n

演示: https : //regex101.com/r/qiLe2B/1

假設我們有一個文件text.txt ,內容如下:

blabla.blabla
blabla. blabla
one.two
three. four. five 

為了獲得所需的結果,我們使用帶有特定正則表達式模式的re.sub()函數:

import re

with open('test.txt', 'r') as fh:
    result = re.sub(r'(\w+\.)(?=\S)', r'\1\n', fh.read())

print(result)

輸出:

blabla.
blabla
blabla. blabla
one.
two
three. four. five

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM