Qualcuno può spiegare Possessive Quantificatori a me? (Espressioni regolari)

StackOverflow https://stackoverflow.com/questions/1117467

  •  12-09-2019
  •  | 
  •  

Domanda

Sto leggendo il doc PCRE, e si riferisce al quantificatori possessivi , ma non in modo esplicito o in modo specifico le definiscono. So quello che un quantificatore avido è, e so quello che un quantifer pigro è. Ma possessivo?

Il pagina man PCRE sembra essere barare quando si utilizza il termine senza definirlo. La pagina man afferma esplicitamente che il termine quantificatori possessivi è stato definito in libro di Friedl. Beh, che è grande, ma io non ho il libro di Friedl, e nel leggere la pagina man, tra le righe, non riesco a capire cosa distingue quantificatori possessivi da golosi.

  • ? = Zero o uno, avido
  • ?? = Zero o uno, pigro
  • ? + = Zero o uno, possessivo
  • '+' = uno o più, avido
  • +? = Uno o più, pigro
  • ++ = uno o più, possessivo
È stato utile?

Soluzione

Forse il posto migliore per iniziare è Regex Tutorial - possessivi Quantificatori :

  

Quando si discute la ripetizione   operatori o quantificatori, ho spiegato   la differenza tra avido e pigrizia   ripetizione. Golosità e la pigrizia   determinare l'ordine in cui il regex   motore cerca le possibili permutazioni   del pattern regex. Un avido   quantificatore prima cercherà di ripetere   il token come numero di volte possibile,   e gradualmente rinunciare partite come il   il motore marcia indietro per trovare una complessiva   incontro. Un quantificatore pigro per prima   ripetere il token come poche volte   richiesto, e gradualmente espandere la   corrispondere il motore fa scorrere   l'espressione regolare per trovare una corrispondenza nel complesso.


  

quantificatori possessivi sono un modo per evitare che il motore regex da   provare tutte le permutazioni. Ciò è utile soprattutto per le prestazioni   motivi. È inoltre possibile utilizzare quantificatori possessivi per eliminare certi   le partite.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top