mozilla
Wyniki wyszukiwania

    RegExp.prototype.exec()

    Trwa tłumaczenie tego artykułu.

    Podsumowanie

    Wykonuje operacje wyszukiwania danego łańcucha znaków. Wynikiem jest macierz.

    Składnia

    regexObj.exec(str)

    Parametry

    str 
    Łańcuch znaków, do którego ma być porównane wyrażenie.

    Opis

    Jak wynika z opisu składni metoda exec może być wywołana w sposób bezpośredni (za pomocą regexp.exec(str)) lub pośredni (za pomocą regexp(str)).

    Jeśli wynik będzie pozytywny metoda exec zwróci macierz oraz zaktualizuje własności obiektu. W przeciwnym wypadku zostanie zwrócone null.

    Przejrzyj poniższy przykład:

    //Znajdź pojedyncze "d" poprzedzone przez jedno lub więcej "b", po których następuje pojedyncze "d"
    //Zapamiętaj znalezione "b" oraz następujące "d"
    //Ignoruj wielkość liter
    var re=/d(b+)(d)/ig;
    var myArray = re.exec("cdbBdbsbz");
    

    Poniższa tabela pokazuje rezultaty wygenerowane przez skrypt:

    Obiekt Właściwość/Indeks Opis Przykład
    myArray   Zawartość myArray. [ \"dbBd\", \"bB\", \"d\"') ]
    index Indeks wyszukania łańcucha znaków rozpoczynający się od 0. 1
    input Ciąg bazowy. cdbBdbsbz
    [0] Ostatnie odnalezione znaki. dbBd
    [1], ...[ n ] Wyszukane podłańcuch w nawiasach. Liczba możliwych podłańcuch jest nieokreślona. [1] = bB
    [2] = d
    myRe lastIndex Indeks, od którego rozpocząć nowe wyszukiwanie. 5
    ignoreCase Wskazuje czy flaga "i" została użyta. true
    global Wskazuje czy flaga "g" została użyta do globalnego przeszukiwania. true
    multiline Wskazuje czy flaga "m" została użyta do globalnego przeszukiwania. false
    source Tekst wyszukiwanego łańcucha znaków. d(b+)(d)

    If your regular expression uses the "g" flag, you can use the exec method multiple times to find successive matches in the same string. When you do so, the search starts at the substring of str specified by the regular expression's lastIndex property. For example, assume you have this script:

    var myRe = /ab*/g;
    var str = 'abbcdefabh';
    var myArray;
    while ((myArray = myRe.exec(str)) !== null) {
      var msg = 'Found ' + myArray[0] + '. ';
      msg += 'Next match starts at ' + myRe.lastIndex;
      console.log(msg);
    }

    Skrypt ten wyświetli następujący tekst:

    Found abb. Next match starts at 3
    Found ab. Next match starts at 9 
    

    Przykłady

    Przykład: Zastosowanie exec()

    You can also use exec() without creating a RegExp object:

    var matches = /(hello \S+)/.exec('This is a hello world!');
    console.log(matches[1]);

    This will display an alert containing 'hello world!'.

    Zobacz także

    Autorzy i etykiety dokumentu

    Contributors to this page: Ptak82, Bedi, teoli, Mgjbot
    Ostatnia aktualizacja: teoli,
    Ukryj panel boczny