Metodo exec
Consente di eseguire una ricerca in una stringa utilizzando un criterio di espressione regolare e restituisce una matrice contenente i risultati della ricerca.
function exec(str : String) : Array
Argomenti
- str
Obbligatoria. Oggetto String o valore letterale stringa in cui eseguire la ricerca.
Note
Se con il metodo exec non viene trovata alcuna corrispondenza, verrà restituito null. Se viene individuata una corrispondenza, verrà restituita una matrice e le proprietà dell'oggetto globale RegExp verranno aggiornate in base ai risultati di tale corrispondenza. L'elemento zero della matrice contiene l'intera corrispondenza, mentre gli elementi da 1 a n contengono qualsiasi corrispondenza secondaria che si è verificata all'interno della corrispondenza. Il funzionamento è identico a quello del metodo match senza il flag globale (g) impostato.
Se per un'espressione regolare è impostato il flag globale, verrà cercata la stringa che ha inizio nella posizione indicata dal valore di lastIndex. Se il flag globale non è impostato, il valore di lastIndex verrà ignorato e la ricerca comincerà dal punto di inizio della stringa.
La matrice restituita dal metodo exec ha tre proprietà: input, index e lastIndex. La proprietà input contiene l'intera stringa cercata. La proprietà index contiene la posizione della sottostringa corrispondente all'interno dell'intera stringa cercata. La proprietà lastIndex contiene la posizione che segue l'ultimo carattere nella corrispondenza.
Esempio
Nell'esempio seguente viene illustrato l'utilizzo del metodo exec:
var src = "The quick brown fox jumps over the lazy dog.";
// Create regular expression pattern with a global flag.
var re = /\w+/g;
// Get the next word, starting at the position of lastindex.
var arr;
while ((arr = re.exec(src)) != null)
{
print (arr.index + "-" + arr.lastIndex + " " + arr[0]);
}
// Output:
// 0-3 The
// 4-9 quick
// 10-15 brown
// 16-19 fox
// 20-25 jumps
// 26-30 over
// 31-34 the
// 35-39 lazy
// 40-43 dog