Alla ricerca di modelli di testo può tornare utile in un'ampia varietà di attività. Con le espressioni regolari, è possibile sfruttare Python per fare altrimenti che richiede tempo e noioso massaggiare dati attività semplice da completare. Python supporta le espressioni regolari estese, che significa che è possibile ottenere una funzionalità comparabili a perl o php motori delle espressioni regolari PCRE.
Istruzioni
Compilare l'espressione
1
Importare il modulo di espressione regolare nel codice Python aggiungendo "importare" nella parte superiore del vostro codice.
2
Creare un oggetto di espressione regolare utilizzando il metodo re.compile:
myregex = re.compile("my\wexample\wregex")
3
Passare un argomento di secondo facoltativo di re.compile che indica i modificatori per l'espressione regolare. Ad esempio, se si desidera rendere l'espressione regolare corrisponde su più righe ed essere tra maiuscole e minuscole, è possibile compilare l'espressione come:
myregex = re.compile('my\wexample\wregex', 're.IGNORECASE | re.MULTILINE')
Ricerca
4
Creare una variabile che memorizza i risultati di un'espressione regolare compilata. Utilizzare un'espressione regolare compilata per cercare una stringa e assegnare i risultati:
results = myregex.search('use my example regex to search this string')
5
Utilizzare la variabile di oggetto di corrispondenza e la funzione Start () per trovare l'inizio della prima occorrenza dell'espressione regolare:
print results.start()
>> 3
6
Utilizzare la funzione end () per trovare la fine della prima occorrenza dell'espressione regolare:
print results.end()
>> 21
7
Utilizzare la funzione Group () per trovare la stringa corrispondente a un'espressione regolare:
print results.group()
>>> my example regex
Sostituire
8
Utilizzare l'espressione regolare per eseguire una sostituzione nella vostra stringa utilizzando la routine di re.sub, se necessario.
9
Creare una nuova variabile di stringa per contenere i risultati della tua sostituzione. Il primo argomento è il testo di sostituzione, e il secondo argomento è la stringa da corrispondere su:
newstring = myregex.sub('kung fu', 'use my example regex to regex this string')
print newstring
>>> use my kung fu to regex this string
Consigli & Avvertenze
- Il Python regolare espressione How To contiene una solida introduzione al processo di lavoro con le espressioni regolari in qualsiasi lingua, come pure la documentazione completa su tutti i principali regex routine e modificatori (Vedi risorse qui sotto).
- Le espressioni regolari di Python non corrispondono direttamente sui token di Unicode. Tuttavia, è possibile utilizzare la notazione di multi-byte \uFFFF per eseguire corrispondenze di Unicode.