2024-03-29 02:15:07 发布
网友
程序应该将这些标点字符中的每一个都替换为被两个空格包围的字符。你知道吗
我试过这个:
sent = re.sub('[!,\'!?.]',' \1 ', sent)
但它只是打印了一些奇怪的图标而不是那些标点符号
这是使用python3完成的。你知道吗
根据我最初的评论,您的替代者是\1,但您从未创建过捕获组。按照下面的建议将regex包围在()中。此外,还需要转义\或使其成为原始字符串。你知道吗
\1
()
\
re.sub(r"([,'!?.])", r' \1 ', sent)
See code in use here
字符串“\1”被解释为ascii码位1\x01。要防止这种情况发生,请使用原始字符串r'\1'。另外,要使用反向引用,应该使用括号。结果如下:
>>> sent = "!,\'!?." >>> sent = re.sub(r'([!,\'!?.])',r' \1 ', sent) >>> sent " ! , ' ! ? . "
根据我最初的评论,您的替代者是
\1
,但您从未创建过捕获组。按照下面的建议将regex包围在()
中。此外,还需要转义\
或使其成为原始字符串。你知道吗See code in use here
字符串“\1”被解释为ascii码位1\x01。要防止这种情况发生,请使用原始字符串r'\1'。另外,要使用反向引用,应该使用括号。结果如下:
相关问题 更多 >
编程相关推荐