我正在尝试创建一个正则表达式,将匹配以下语句:
steal
stealer
photograph
photographer
但不能匹配:
steale
photographe
我尝试了下面的RustExp,但是重复只针对R而不是E:
(steal|photograph)(er?)
注意:这个问题已经从一个更大的正则表达式简化了,如果可以避免的话,使用(steal|stealer|photograph|photographer)是不可行的。
将?
移到父元素的外面,这样它就适用于整个组,而不仅仅是r
字符:
(steal|photograph)(er)?
(游乐场)
注意,如果您不打算捕获任何组的内容,您可以将它们更改为非捕获组,这可以提高性能,因为不需要提取组匹配:
(?:steal|photograph)(?:er)?