2011-12-26 7 views
10

sto leggendo la pagina man GNU find s' e inciampare su questo interruttore:Le differenze tra i tipi di espressioni regolari

-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. 

Qual è la differenza tra questi sintassi regex? Ho più familiarità con la regex di Ruby, quindi quale tipo di regex dovrei usare con find?

+1

Dai un'occhiata qui: http://www.regular-expressions.info/refflavors.html – fge

+1

Hmm, grazie, ho trovato questo URL: http://www.gnu.org/software/findutils/manual/html_node/ find_html/Regular-Expressions.html che praticamente risponde alla mia prima domanda. – Lamnk

risposta

3

Le espressioni regolari sono implementate in molti modi. Le espressioni estese POSIX conoscono gli stessi metacaratteri delle espressioni base POSIX ma con alcune aggiunte, come potete vedere nello on this page.

In alcuni casi, è possibile utilizzare un determinato metacarattere conosciuto da una di queste implementazioni e si può usare questa opzione per dire a find quale si sta utilizzando. Se hai bisogno solo di un'espressione più semplice, posix-basic sarebbe sufficiente.

Inoltre si potrebbe semplicemente preferire il tipo di RegEx a cui sei abituato e find è in grado di interpretarlo correttamente.

Come già menzionato, utilizzare this site per ulteriori informazioni sulle differenze tra la sintassi di RegEx.

Problemi correlati