REGEX:为什么'^([az] | a)$'与'a'不匹配?

And*_*chi 1 regex

我以前从未使用过正则表达式而且我正在测试一些例子.我不明白的是为什么正则表达式^([a-z] | a)$与字符串'a'不匹配.

我的理解[a-z]是相当于(a | b | c | ... | y | z),因此 [a-z] | a 必须等同于(a | b | c | ... | y | z) | a,这是一样的说(a | b | c | ... | y | z)[a-z].

因此,字符串str匹配^([a-z] | a)$iff匹配^[a-z]$.

这就是为什么我不明白为什么正则表达式与字符串'a''e'不匹配的例子.

PS:我在这个页面上测试了这个.

Yar*_*mer 5

空格在正则表达式中很重要.删除管道周围的空间(|),它应该工作.