Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
正如标题所说,正则表达式模式是否(x|y)*与相同的字符串匹配[xy]*?
(x|y)*
[xy]*
是的,它们匹配完全相同的字符串集。
它们不是等价的。 (x|y)*设置反向引用,[xy]*没有。
因此(?:x|y)*和[xy]*在行为上是等效的,因为两者都没有设置反向引用。
(?:x|y)*
它接近等效,但第一种形式从由它分隔的组中捕获,当匹配时可以使用(对于第一个)进行检索。( )$1regex
( )
$1
regex
如果要避免捕获,请使用
(?:re)
re正则表达式在哪里。
re
这仅在x并且y完全是xand时才有效y,如果它们是一般的正则表达式则无效
x
y
见回溯