[^ *]是什么意思?

时间:2011-10-15 23:04:11

标签: regex

所以[^x]表示不匹配“x”,而x*表示匹配“x”0次或更多次,但[^*]是什么意思?

4 个答案:

答案 0 :(得分:32)

这意味着“匹配不是文字星号的字符。”

要记住的是,在字符类中,元字符不需要转义,因此[^*][^\*]相同。同样,您可以使用[.]来引用文字点而不是引用任何字符的元字符。在角色类之外,您需要将其转义:\.

答案 1 :(得分:5)

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

答案 2 :(得分:5)

*character class内没有特殊含义,所以它实际上意味着"某些不是*"。在字符类中具有特殊含义的唯一字符是-^]。除此之外,一切都是字面意思。例如,[^.]表示"不是.",正如[^$]表示"某些不是$ {1}}"

答案 3 :(得分:1)

对于像这样的符号搜索,搜索引擎symbolhound是一个不错的选择。以下是[^ *]的results

[披露:在SH团队]