⊗ppPmRgRO 224 of 447 menu

Operatori di ripetizione dei caratteri nelle espressioni regolari

Ci sono situazioni in cui vogliamo indicare che un carattere si ripete un determinato numero di volte. Se conosciamo il numero esatto di ripetizioni, possiamo semplicemente scriverlo più volte - #aaaa#. Ma cosa fare se vogliamo dire qualcosa come: ripeti una o più volte?

Per questo esistono gli operatori (quantificatori) di ripetizione: il più + (una o più volte), l'asterisco * (zero o più volte) e il punto interrogativo ? (zero o una volta). Questi operatori agiscono sul carattere che li precede.

Osserviamo il funzionamento di questi operatori con degli esempi.

Esempio

Troviamo tutte le sottostringhe secondo il modello lettera 'x', lettera 'a' una o più volte, lettera 'x':

<?php $str = 'xx xax xaax xaaax xbx'; $res = preg_replace('#xa+x#', '!', $str); ?>

Di conseguenza, nella variabile verrà memorizzato quanto segue:

'xx ! ! ! xbx'

Esempio

Troviamo tutte le sottostringhe secondo il modello lettera 'x', lettera 'a' zero o più volte, lettera 'x':

<?php $str = 'xx xax xaax xaaax xbx'; $res = preg_replace('#xa*x#', '!', $str); ?>

Di conseguenza, nella variabile verrà memorizzato quanto segue:

'! ! ! ! xbx'

Esempio

Troviamo tutte le sottostringhe secondo il modello lettera 'x', lettera 'a' zero o una volta, lettera 'x':

<?php $str = 'xx xax xaax xbx'; $res = preg_replace('#xa?x#', '!', $str); ?>

Di conseguenza, nella variabile verrà memorizzato quanto segue:

'! ! xaax xbx'

Problemi pratici

Data la stringa:

<?php $str = 'aa aba abba abbba abca abea'; ?>

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: lettera 'a', lettera 'b' una o più volte, lettera 'a'.

Data la stringa:

<?php $str = 'aa aba abba abbba abca abea'; ?>

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: lettera 'a', lettera 'b' zero o più volte, lettera 'a'.

Data la stringa:

<?php $str = 'aa aba abba abbba abca abea'; ?>

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: lettera 'a', lettera 'b' una volta o nessuna, lettera 'a'.

Data la stringa:

<?php $str = 'aa aba abba abbba abca abea'; ?>

Scrivi un'espressione regolare che trovi le stringhe 'aa', 'aba', 'abba', 'abbba', senza catturare 'abca' e 'abea'.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta