Python:正则表达式中的POSIX字符类?

Python:正则表达式中的POSIX字符类?,python,regex,character-class,Python,Regex,Character Class,例如,我如何在Python中搜索给定字符串中由10个isprint字符组成的序列 使用GNU grep,我只需执行grep[[:print:]{10}因为Pythonre模块不支持POSIX,所以您必须借助字符类来模拟它 您可以使用中的,并添加限制量词{10}: [\x20-\x7E]{10} 看 或者,您可以使用该声明来支持POSIX字符类(支持POSIX字符类) 当在re.sub()中使用时,这个字符类在Python3[`~!@$%^&*()中为我工作method@Iota,它只匹配ASC

例如,我如何在Python中搜索给定字符串中由10个
isprint
字符组成的序列


使用GNU grep,我只需执行
grep[[:print:]{10}

因为Python
re
模块不支持POSIX,所以您必须借助字符类来模拟它

您可以使用中的,并添加限制量词
{10}

[\x20-\x7E]{10}


或者,您可以使用该声明来支持POSIX字符类(支持POSIX字符类)

当在
re.sub()中使用时,这个字符类在Python3
[`~!@$%^&*()中为我工作method@Iota,它只匹配ASCII标点符号,与“可打印字符”的概念无关。因此,如果要使用POSIX字符类,它将是
[[:punct:][]
。要匹配Python中的标点符号,可以使用
[^\w\s]
,尽管有更好更精确的模式。我的错误!我把
[[:print]]
类误读为
[[:punct]]
。感谢你的纠正。