我有这个正则表达式:[\s\S-[<>]]*
你能帮我理解这个表达是什么意思吗?从我看来,这意味着由空格和从非空格字符到 < 或 > 的范围组成的字符类?
意义不大。。
谢谢!
最佳答案
这是一个只有少数正则表达式引擎(.NET、JGSoft、XML Schema 和 XPath,但不支持原生 Java 正则表达式)支持的变体,它被称为 character class substraction .
例如,
[A-Z-[EFG]]
匹配来自
A
的任何字母至 Z
除了 E
, F
或 G
.但在你的情况下,这真的没有多大意义,因为
[\s\S]
匹配任何字符 -可以通过以下方式获得相同的结果(在任何正则表达式中)
[^<>]*
关于regex - 理解正则表达式 [\s\S-[<>]]*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10738792/