[^*]是什么意思?

Nic*_*unt 24 regex

所以[^x]意味着不匹配"x",x*意味着匹配"x"0次或更多次,但是什么[^*]意思?

Ahm*_*eed 32

这意味着"匹配不是文字星号字符的字符".

要记住的是,在字符类中,元字符不需要转义,因此[^*]也是如此[^\*].类似地,您可以使用[.]引用文字点而不是引用任何字符的元字符.在角色类之外,你需要逃避它:\..

  • ```字符在`[`和`]`之间没有通常的含义.(在这种情况下它没用.) (4认同)

Mic*_*eyn 5

它表示单个出现的字符不是实际字符*.不需要转义字符,因为星号在字符类中没有特殊含义.这不应该是非常令人惊讶的,因为克拉字符^在字符类中也具有完全不同的含义.


rid*_*rid 5

*字符类中没有特殊含义,所以它实际上意味着"不是*"的东西.在字符类中具有特殊含义的唯一字符是-,^].除此之外,一切都是字面意思.例如,[^.]意思是"不是"的东西.,就像[^$]"不是某种东西$".