嵌套字符类减法在Python中如何工作?
嵌套字符类减法
由于我们可以在减去的字符类中使用完整的字符类语法,因此我们可以从要减去的类中减去一个类。[0-9-[0-7-[0-3]]]首先从0-7减去0-3,得出[0-9-[4-7]]或[0-38-9],匹配字符串012389中的任何字符。
类减法始终是字符类中的最后一个元素。[0-9-[4-7]ad]不是有效的正则表达式。应该将其重写为[0-9a-d-[4-7]]。减法适用于整个班级。
虽然我们可以使用嵌套字符类减法,但不能顺序地减去两个类。要从具有所有Unicode字母的类中减去ASCII字符和阿拉伯字符,请将ASCII和阿拉伯字符组合为一个类,然后将其减去,如[\p{L}-[\p{IsBasicLatin}\p{IsArabic}]]。