理解正则表达式[\ s \ S - [<>]] *

时间:2012-05-24 13:49:29

标签: regex

我有这个正则表达式:[\s\S-[<>]]*

你能帮我理解这个表达的含义吗?从我看来它意味着由空格和从非空格字符到&lt;的范围组成的字符类。或&gt;?

没有多大意义..

谢谢!

1 个答案:

答案 0 :(得分:9)

这是一种仅由少数正则表达式引擎(.NET,JGSoft,XML Schema和XPath支持,但不是例如本机Java正则表达式)支持的变体,它被称为character class substraction

例如,

[A-Z-[EFG]]
除了AZE之外,

匹配FG的任何字母。

但在你的情况下,它确实没有多大意义,因为[\s\S]匹配任何角色 -

可以实现相同的结果(在任何正则表达式中)
[^<>]*