如何在python中使用字符串保持标点符号?

如何在python中使用字符串保持标点符号?,第1张

概述我想创建所有日志的目录,所以我只想保留所有标点符号并删除所有其他包含CJK和其他字符的字符. 例如: s = "aaa; sf = fa = bla http://wa" 预期产量是 ;==:// 你可以使用 str.translate: >>> from string import letters, digits, whitespace, punctuation>>> s = "aaa; sf 我想创建所有日志的目录,所以我只想保留所有标点符号并删除所有其他包含CJK和其他字符的字符.

例如:

s = "aaa; sf = fa = bla http://wa"

预期产量是

;==://
解决方法 你可以使用 str.translate

>>> from string import letters,digits,whitespace,punctuation>>> s = "aaa; sf = fa = bla http://wa">>> s.translate(None,letters+digits+whitespace)';==://'

或正则表达式:

>>> re.sub(r'[^{}]+'.format(punctuation),'',s)';==://'

时间比较:

>>> s = "aaa; sf = fa = bla http://wa"*1000>>> %timeit s.translate(None,letters+digits+whitespace)10000 loops,best of 3: 171 us per loop                  #winner>>> r1 = re.compile(r'[^{}]+'.format(punctuation))>>> r2 = re.compile(r'[\w\s]+')>>> %timeit r1.sub('',s)100 loops,best of 3: 2.64 ms per loop>>> %timeit r2.sub('',best of 3: 3.31 ms per loop
总结

以上是内存溢出为你收集整理的如何在python中使用字符串保持标点符号?全部内容,希望文章能够帮你解决如何在python中使用字符串保持标点符号?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1195123.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存