zárójelben csoport

a sablon része lehet szögletes zárójelben (.). Az ilyen izolált részeit a minta az úgynevezett „zárójeles kifejezés” vagy „vágott csoportok”.

Ebben a spin-off két hatása van:







  1. Ez lehetővé teszi, hogy válasszon egy része a mérkőzés egyetlen eleme a tömböt, amikor a kereső segítségével a String # mérkőzést vagy RegExp # exec.
  2. Ha tesz egy kvantor után zárójelben, akkor alkalmazni kell a teljes sorozatot. és nem csak egy karakter.

Az alábbi példában, a sablon (go) + jelentése egy vagy több ismétlődő „go”:

Zárójel nélkül, a sablon / go + / jelentene g. ami után van egy vagy több o. például: goooo. A zárójel „csoportosulás» (megy) együtt.

Konzolok számozása balról jobbra. Keresőmarketing tárolja a tartalmát az egyes konzolok, és lehetővé teszi a hozzáférést meg - a minta és a helyettesítő húr, és természetesen, az eredmények között.

Például, hogy megtalálják a HTML-tag lehet egy sablont <.*?> .

A keresés után akarunk tenni valamit az eredménnyel. Kényelmi kötni tartalmát <.> zárójelben: <(.*?)>. Akkor lesz külön kapható.

Ha keres egy módszert a String # egyezés az eredményül kapott tömböt kezdetben minden véletlen, majd - zárójelben csoport. a sablon <(.*?)> Konzol egyetlen csoport:

Vegye figyelembe, hogy az eljárás String # mérkőzés ad zárójelben csoport csak akkor keresi nélkül zászló /. / G. A fenti példában ez csak az első találat nem található, mivel nincs zászló /. / G kérik csak az első mérkőzés.







Kereséséhez és zászló /. / G és a tartót csoportok módszerével RegExp # exec:

A aritmetikai kifejezés, amelynek tagjai a két szám és a műveletek között, például:

Műveletek listáját: „+”. "-". "*" És "/".

Ott is lehet terek körül az üzemeltető és a számok.

Írj egy függvényt, amely megkapja a kifejezést, és adja vissza egy tömbben három érv:

  1. Az első számot.
  2. Operator.
  3. A második számot.
döntés

A szabályos kifejezés a több, esetleg tört és negatív: -? \ D + (\ \ d +.). Mi már lebontották a korábbi feladatokat.

Operator - egy [- + * /]. Megjegyezzük, hogy a kötőjel - az első helyet a listán, mint bármilyen pozícióban, kivéve az első és az utolsó, hogy van egy különleges jelentése belsejében [. ]. és ez kell szűrni.

Szükségünk van egy szám, akkor az üzemben, majd a számot, és az opcionális rések között.

Teljes reguláris kifejezés ezért: -? \ D + (\ \ d +.) \ S * [- + * /] \ s * - \ d + (\ \ d +.) ??.

Az eredmény, mint egy tömb, add zárójelbe az adatokat, hogy mi érdekli, hogy - a számok és az üzemeltető: (-?.? \ D + (\ \ d +)) \ s * ([- + * /]) \ s * (-? \ d + (\ \ d +).?).

Nézze meg működés közben:

Összesen tömb tartalmazza részből áll:

  • eredményeként [0] == "1,2 + 12" (első egyezés)
  • eredmény [1] == "1" (első konzol)
  • eredmény [2] == "2" (a második konzol - a törtrész (\ \ d +).?)
  • eredményezheti [3] == "+" (...)
  • eredmény [4] == "12" (...)
  • eredményeként [5] == nem definiált (utolsó konzol, de a második az a tört része hiányzik)

Minket ez a tömb csak akkor kell a számot és üzemeltetője. És, mondjuk, a tört része is - nem szükséges.

Uberom azt tárolására, hozzátéve, hogy a tetején a zárójelben. azaz: (:? \ \ d +)..




Kapcsolódó cikkek