我如何在Python中搜索一个给定字符串中的10个isprint
字符序列?
使用GNU grep,我可以简单地执行grep [[:print:]]{10}
。
我如何在Python中搜索一个给定字符串中的10个isprint
字符序列?
使用GNU grep,我可以简单地执行grep [[:print:]]{10}
。
由于Python的re
模块不支持POSIX,因此您需要借助字符类来模拟它。
您可以使用regular-expressions.info上的一个,并添加一个限定量词{10}
:
[\x20-\x7E]{10}
请参见演示
或者,您可以使用Matthew Barnett的正则表达式模块,它声称支持POSIX字符类(支持POSIX字符类。)
re.sub()
方法时,Python 3中的这个字符类对我很有效:[\
~!@#$%^&*()_=+[]{}\|;:"'<>.,/?]`。 - Allan Tsai[[:print]]
类误读为[[:punct]]
了。感谢您的纠正。 - Allan Tsaipip install regex
),然后使用import regex
和pattern = regex.compile(r'[[:print:]]{10}')
。 - Wiktor Stribiżew