簡體   English   中英

匹配文本中的文字點和新行(正則表達式)

[英]Match a literal dot and a new line in a text (regex)

我有以下文字“DTMS - Specifiche\nL'utilizzo dei negativi su vetro si diffonde a partire dal 1850 circa ed \ninizia intorno al 1920.\nPagina \n3\n di \n4\nAU”。 我想把“L'utilizzo”中的所有文本都放到“.\n”中。 我曾嘗試使用“DTMS - Specifiche\n(.+?)\n”,但它在代碼找到第一個“\n”時結束。 我還嘗試使用“DTMS - Specifiche\n(.+?)[.]\n”,因為我認為我需要轉義點,但它不能像我想的那樣工作。 有誰能弄清楚嗎? 我是 Python 和 Regex 的新手,我感到無助! 提前致謝

如果要匹配到第一個點和換行符:

DTMS - Specifiche\n([\S\s]*?\.)\n

如果你不想要這個點,你可以把它移到捕獲組之外。

正則表達式演示

import re

pattern = r"DTMS - Specifiche\n([\S\s]*?)\.\n"

s = ("DTMS - Specifiche\n"
            "L'utilizzo dei negativi su vetro si diffonde a partire dal 1850 circa ed \n"
            "inizia intorno al 1920.\n"
            "Pagina \n"
            "3\n"
            " di \n"
            "4\n"
            "AU ")

m = re.search(pattern, s)
if m:
    print(m.group(1))

輸出

L'utilizzo dei negativi su vetro si diffonde a partire dal 1850 circa ed 
inizia intorno al 1920.

暫無
暫無

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

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