-3
內的多個表達我的Python腳本,它需要像蟒蛇regular_expression_表達
"\[.*[ERROR].*\n.*\n.*\n.*/\n.*is for multiple time/[\]]{2}"
請讓我知道如何採取"\n."
多時間表達......我被陷在這個地方
內的多個表達我的Python腳本,它需要像蟒蛇regular_expression_表達
"\[.*[ERROR].*\n.*\n.*\n.*/\n.*is for multiple time/[\]]{2}"
請讓我知道如何採取"\n."
多時間表達......我被陷在這個地方
有多行標誌可用,讓你匹配多行。
https://docs.python.org/2/library/re.html#re.MULTILINE
重。 MULTILINE
指定時,模式字符'^'匹配字符串的開頭和每行的開頭(緊跟在每個換行符之後);並且模式字符'$'匹配字符串的末尾和每行末尾(緊接在每個換行符之前)。默認情況下,'^'只匹配字符串的開頭,'$'只匹配字符串的末尾,緊接在字符串末尾的換行符(如果有的話)之前。
您還可以訪問DOTALL,將有。匹配即使換行
re。 DOTALL
使'。'特殊字符完全匹配任何字符,包括換行符;沒有這個標誌,'。'將匹配除換行符之外的任何內容。
根據你的匹配,這兩個標誌讓你選擇如何處理換行符。在你的情況,你可能需要調整你的模式是這樣的:「*」
text = '\n[ [ERROR]\n\nsome text\nis for multiple time]'
re.findall("\[.*\[ERROR\].*is for multiple time\]", text, re.DOTALL)
# result: ['[ [ERROR]\n\nsome text\nis for multiple time]']
其實它給了錯誤的輸出。由於第一本身採取的** ** re.DOTALL,並給予完整的字符串,但我希望最後一次「。*」多次也是\ n – Kamal