formatter_fn = lambda sentence: re.sub(r'([^\s\w\.])+', '', sentence).lower()
formatter_fn('\r\ndirected; by Nolan.')
这给出了 \r\ndirected by nolan. 的输出,但我希望它是 directed by nolan.
在这种情况下如何删除 \r\n ?
谢谢!
请您参考如下方法:
试试这个
re.sub(r'[^ \w\.]', '', sentence).lower()
\s 相当于集合 [\t\n\r\f] 但你只需要空格(我猜)。
所以当你使用
re.sub(r'[^\s\w\.]', '', sentence).lower()
它将匹配除了 ( space, \t, \n, \r, \f ) <-- \s、\w 和 . 的一部分。所以它无法匹配字符串中的 \r 和 \n。
如果你想在你的集合中包含\t,那么你可以使用
re.sub(r'[^ \\t\w\.]', '', sentence).lower()
