給定以下字串:“”“我想要的只是一杯合適的咖啡用合適的銅咖啡壺制作,我可能不合時宜但我想要一杯咖啡來自合適的咖啡壺 錫咖啡壺和鐵咖啡壺 他們'對我沒用如果我不能喝杯合適的咖啡在合適的銅咖啡壺里,我會喝杯茶。“”“使用正則運算式,我需要撰寫一個突出顯示單詞的函式“ coffee”、“pot”或“pots”,如果它們出現在一行的末尾,所以我嘗試的模式是 coffee$|pot$|pots$(因為 $ 用于 endwith)
如果我在 regex101 中這樣做,它會突出顯示所有必需的單詞
但是 jupyter notebook 中的輸出是
'我想要的只是一杯合適的咖啡\n用合適的銅咖啡壺制作\n我可能不合時宜\n但我想要一杯咖啡\n來自合適的咖啡壺\n錫制咖啡壺和鐵咖啡壺\n他們'對我沒用\n如果我不能喝一杯合適的咖啡\n在一個合適的銅咖啡壺里\n我會喝杯茶'
我試過咖啡$ 咖啡$\n 咖啡\n$ 這里沒有任何效果。如果我使用 .replace("\n", " ") 它作為整個字串。如何在 jupyter notebook 中處理 \n
在 regex101 中嘗試過
uj5u.com熱心網友回復:
我不確定您所說的“highlight”是什么意思,但這里有一個 RegEx 示例,它匹配行尾的所有實體“coffee”、“pot”和“pots”:
import re
string = """
All I want is a proper cup of coffee
Made in a proper copper coffee pot
I may be off my dot
But I want a cup of coffee
From a proper coffee pot
Tin coffee pots and iron coffee pots
They’re no use to me
If I can’t have a proper cup of coffee
In a proper copper coffee pot
I’ll have a cup of tea.
"""
pattern = re.compile(r'(coffee|pots?)(?:\n)')
print(re.findall(pattern, string))
有關使用的 RegEx 模式的詳細資訊,請參見此處。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/519976.html
