Regex 需要帮助了解此特定正则表达式[^。]
我正在学习正则表达式,并试图解析它 [^.]^表示“不”,而点是一个通配符,表示任何字符,因此这意味着查找与“不包含任何字符”匹配的字符?我还是不明白。有人能解释一下吗 加号是Kleene加号,意思是“1或更多”。所以现在是“一个或多个”“不是任何字符” 我得到了Regex 需要帮助了解此特定正则表达式[^。],regex,Regex,我正在学习正则表达式,并试图解析它 [^.]^表示“不”,而点是一个通配符,表示任何字符,因此这意味着查找与“不包含任何字符”匹配的字符?我还是不明白。有人能解释一下吗 加号是Kleene加号,意思是“1或更多”。所以现在是“一个或多个”“不是任何字符” 我得到了\。,它意味着一个周期 (txt | html)表示与txt文件或html文件匹配。我想我明白加号后的一切。我不明白的是,为什么它看起来不像DOS的等价物,我可以这样做:*.txt或*(txt | html),其中*表示以文件扩展名.t
\。
,它意味着一个周期
(txt | html)表示与txt文件或html文件匹配。我想我明白加号后的一切。我不明白的是,为什么它看起来不像DOS的等价物,我可以这样做:*.txt或*(txt | html),其中*表示以文件扩展名.txt或.html结尾的所有内容
点(
)在字符类中没有特殊意义,不需要转义
[^.]
表示“非文字
字符的任何字符”<代码>[^.]+匹配一个或多个非点字符
发件人:
在大多数正则表达式中,字符类中唯一的特殊字符或元字符是右括号(]
)、反斜杠(\
)、插入符号(^
)和连字符(-
)。通常的元字符是字符类中的普通字符,不需要用反斜杠转义。如果转义字符类中的常规元字符,正则表达式可以正常工作,但这样做会显著降低可读性
在[]
字符类中不是特殊的<代码>[^.]+表示任何非点字符的一次或多次出现(+
)
如果执行*.txt
操作,则该正则表达式将无效,因为*
不会获得要重复的字符(零次或多次)
[^.]+\.(txt|html)