Sono abbastanza nuovo per le espressioni regolari. Potresti aiutarmi a creare un modello, che corrisponda a parole intere, contenente parti specifiche? Per esempio, se ho una stringa di testo "eseguire una corrispondenza espressione regolare" e se cerco esprimono, mi shuld dare espressione, se cerco forma, dovrebbe darmi eseguire e così sopra. Hai l'idea?PHP preg_match per trovare intere parole
21
A
risposta
38
preg_match('/\b(express\w+)\b/', $string, $matches); // matches expression
preg_match('/\b(\w*form\w*)\b/', $string, $matches); // matches perform,
// formation, unformatted
Dove:
\b
è un confine di parola\w+
è uno o più "parola" carattere *\w*
è zero o più caratteri "parola"
Vedere il manuale su escape sequences per PCRE.
* Nota: anche se non proprio un "carattere di parola", la sottolineatura _
è anche incluso int la classe di caratteri \w
.
4
Corrisponde 'Perform':
\b(\w*form\w*)\b
Questo partite 'espressione':
\b(\w*express\w*)\b
Grazie goreSplatter! Funziona! – tintix
È grandioso. Proprio quello che stavo cercando ... +1 – OrPaz
\ b Confine di parole, bello ... Perché non l'ho visto fino ad ora? Utile. – Andrew