理解几个正则表达式

时间:2018-03-08 00:26:13

标签: regex

我有几个我不理解的正则表达式。

为什么[^dp]an不匹配字符串'pan'?我认为正则表达式告诉你匹配任何包含' d'或' p',然后' an'。但它看起来并不像它所说的那样。

另外,我正确地解释<[a-z]*@\w+.edu>:匹配[az]中的字符0次,直到达到&#39; @&#39;,然后匹配任何单词字符1次或更多次,然后匹配任何字符除了新行,然后匹配&#39; edu&#39;。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

[^表示DON&T匹配集合中的字符。或者,更准确地说,匹配任何字符但该字符集中的字符(因此字符必须在那里。)

关于下一个,你基本上是正确的,虽然缺少&lt;&gt;正则表达式也需要匹配才能发生。 .实际上取决于什么,但通常表示除换行符之外的任何字符。有时它可以包含换行符(例如perl,在特殊模式下)

这可能对你有用,因为它打破了每一位意味着什么: https://regex101.com/