Подтвердить что ты не робот

Различия между типами регулярных выражений

Я читаю справочную страницу GNU find и наткнулся на этот переключатель:

-regextype type
          Changes the regular  expression  syntax  understood  by  -regex  and
          -iregex  tests  which  occur  later on the command line.  Currently-
          implemented types are emacs (this is the default), posix-awk, posix-
          basic, posix-egrep and posix-extended.

Какая разница между этими синтаксисами regex? Я больше знаком с регулярным выражением Ruby, поэтому какой тип регулярного выражения следует использовать с find?

4b9b3361

Ответ 1

Регулярные выражения реализуются многими способами. Расширенные выражения POSIX знают те же метасимволы, что и POSIX Basic Expressions, но с несколькими дополнениями, как вы можете видеть на этой странице.

В некоторых случаях может потребоваться использование определенного метасимвола, известного одной из этих реализаций, и вы можете использовать эту опцию, чтобы сообщить find, какой из них вы используете. Если вам нужно только более базовое выражение, posix-basic будет достаточно.

Также вы можете просто выбрать тип RegEx, к которому вы привыкли, и find может правильно интерпретировать его.

Как упоминалось выше, используйте этот сайт, чтобы узнать больше о различиях между синтаксисом RegEx.