此代碼將替換除單詞之外的所有內容,但是如何獲取它還可保持數字和空格不變?例如「我直到1時纔看到他。」 - > 「我沒有看到他,直到1」匹配除了文字,數字和空格以外的所有內容
text = regex.sub("\P{alpha}+","",text)
此代碼將替換除單詞之外的所有內容,但是如何獲取它還可保持數字和空格不變?例如「我直到1時纔看到他。」 - > 「我沒有看到他,直到1」匹配除了文字,數字和空格以外的所有內容
text = regex.sub("\P{alpha}+","",text)
不要對Unicode的使用Python的re
庫。它工作非常糟糕。改爲使用Matthew Barnett’s regex
library。它工作得很好,好多了。
它也可以運行在Python 2和Python 3上,也可以運行在狹窄和廣泛的版本上,但由於與該特定庫基本無關的原因,我強烈建議您僅運行Python 3的廣泛版本並且避開所有其他組合。
Python的正則表達式不支持Unicode屬性。您可以嘗試:
text = re.sub("[^a-zA-Z0-9 ]+","",text)
取而代之。如果你喜歡安裝Ponyguruma有一些東西,你可以用:
text = re.sub("[\P{Alnum}\PZ]+","",text) # pZ is shorthand for p{Separator}
是的,但看到我的答案。 – tchrist