diff --git a/src/find/matchers/regex.rs b/src/find/matchers/regex.rs index 4b85e4d5..46686150 100644 --- a/src/find/matchers/regex.rs +++ b/src/find/matchers/regex.rs @@ -70,6 +70,8 @@ impl FromStr for RegexType { "posix-extended" => Ok(Self::PosixExtended), // ed and sed are the same as posix-basic "ed" | "sed" => Ok(Self::PosixBasic), + // egrep and posix-egrep are the same as posix-extended + "egrep" | "posix-egrep" => Ok(Self::PosixExtended), _ => Err(ParseRegexTypeError(s.to_owned())), } } @@ -222,4 +224,17 @@ mod tests { let deps = FakeDependencies::new(); assert!(!matcher.matches(&abbbc, &mut deps.new_matcher_io())); } + + #[test] + fn egrep_aliases_map_to_posix_extended() { + // GNU accepts egrep and posix-egrep as names for the extended syntax. + assert_eq!( + "egrep".parse::().unwrap(), + RegexType::PosixExtended + ); + assert_eq!( + "posix-egrep".parse::().unwrap(), + RegexType::PosixExtended + ); + } }