所以[^x]意味着不匹配"x",而x*意味着匹配"x“0次或更多次,但是[^*]是什么意思呢?
发布于 2011-10-16 07:05:32
它的意思是“匹配一个不是文字星号字符的字符”。
需要记住的是,在字符类中不需要对元字符进行转义,因此[^*]与[^\*]相同。类似地,您可以使用[.]来引用文字点,而不是引用任何字符的元字符。在字符类之外,您需要对其进行转义:\.。
发布于 2011-10-16 07:05:40
它表示出现一个不是实际字符*的字符。不需要转义字符,因为星号在字符类中没有特殊意义。这并不奇怪,因为克拉字符^在字符类中也有完全不同的含义。
发布于 2011-10-16 07:07:30
*在character class中没有特殊的含义,所以它的字面意思是“不是*的东西”。在字符类中唯一具有特殊含义的字符是-、^和]。除此之外,一切都是从字面上理解的。例如,[^.]的意思是“不是.的东西”,就像[^$]是“不是$的东西”一样。
https://stackoverflow.com/questions/7781245
复制相似问题