1. Kreiranje objekta.
RegExp = Новый COMОбъект("VBScript.RegExp");
2. Svojstva.
| Svojstvo | Tip podataka | Opis | Podrazumevana vrednost | Primer |
|---|---|---|---|---|
| Global | Logički | Proveriti niz znakova do prvog poklapanja sa obrascem (Netačno) ili po celom tekstu (Tačno) | Netačno |
|
| IgnoreCase | Logički | Razlikovati (Netačno) ili ne razlikovati (Tačno) velika i mala slova | Netačno |
|
| MultiLine | Logički | Višelinijski (Tačno) ili jednolinijski (Netačno) režim | Netačno |
|
| Pattern | Niz znakova | Korišćeni obrazac - uzorak teksta koji se sastoji od običnih znakova i/ili posebnih metaznakova |
|
3. Metode.
| Metoda | Opis | Povratna vrednost | Primer |
|---|---|---|---|
| Replace(Niz znakova, Podniz) | Zamena pojavljivanja koja odgovaraju obrascu (svojstvo Pattern) u originalnom nizu znakova na navedeni podniz | Izmenjen niz znakova |
|
| Test(Niz znakova) | Provera poklapanja sa obrascem | Logički |
|
| Execute(Niz znakova) | Pretraživanje pojavljivanja koja odgovaraju obrascu u originalnom nizu znakova | Kolekcija pronađenih podnizova u vidu agregatnog objekta |
|
4. Metaznakovi.
| Симболи | Опис | Пример |
|---|---|---|
| \ | Показује да је следећи симбол специјални симбол. Низ "\\" одговара "\", а низ "\(" одговара "(". |
|
| ^ | Одређује почетак улазне нити. Ако је постављено својство Multiline, такође одређује позицију одмах после "\n" (нови ред) и "\r" (враћање каретне). |
|
| $ | Одређује крај улазне нити. Ако је постављено својство Multiline, такође одређује позицију непосредно пре "\n" (нови ред) и "\r" (враћање каретне). |
|
| * | Одређује нула или више симбола који стоје испред њега. Еквивалентно је {0,}. |
|
| + | Одређује један или више симбола који стоје испред њега. Еквивалентно је {1,}. |
|
| ? | Одређује нула или један симбол који стоји испред њега. Еквивалентно је {0,1}. Ако се овај метасимбол налази непосредно иза конструкција (*, +, ?, {n}, {n,}, {n,m}), то доводи до одређене промене алгоритма претраге према задатом обрасцу, што је илустровано примером испод. |
|
| {n} | Одређује тачан број симбола који стоје испред њега. "n" је ненегативни цео број. |
|
| {n,} | Одређује минимални број симбола који стоје испред њега. "n" је ненегативни цео број. "{0,}" је еквивалентно "*", а "{1,}" је еквивалентно "+". |
|
| {n,m} | Одређује број симбола који стоје испред њега (од - до). "n" и "m" су ненегативни цели бројеви, при чему n <= m. "{0,1}" је еквивалентно "?". |
|
| . | Одређује било који симбол осим "\n" (нови ред). Да бисте одредили било који симбол, укључујући и "\n", треба користити "[\s\S]". |
|
| (образац) | Фиксира подударање према обрасцу у колекцији SubMatches. Да бисте одредили симболе "(" и ")", треба користити "\(" и "\)". |
|
| (?:образац) | Корисно за комбиновање делова обрасца помоћу симбола "|" ("или"). На пример, "госпо(?:дин|жа)" је краће од "господин|госпожа". НЕ фиксира подударање у колекцији SubMatches. |
|
| (?=образац) | "Windows(?=95|98)" ће пронаћи поднит "Windows" у нити "Windows95", али не и у нити "WindowsNT". Даље подударање почиње одмах, а не након симбола који се налазе у заградама. НЕ фиксира подударање у колекцији SubMatches. |
|
| (?!образац) | "Windows(?!95|98)" ће пронаћи поднит "Windows" у нити "WindowsNT", али не и у нити "Windows95". У осталим аспектима потпуно је аналогно "(?=образац)". |
|
| x|y | Услов "или". "вз|перевод" ће пронаћи "вз" и "перевод". "(вз|пере)вод" ће пронаћи "взвод" и "перевод". |
|
| [abc] | Скуп симбола. Проналази било који од наведених симбола. |
|
| [^abc] | Искључујући скуп симбола. Проналази било који од ненаведених симбола. |
|
| [a-z] | Опсег симбола. Проналази било који симбол из опсега. |
|
| [^a-z] | Isključujući opseg znakova. Pronalazi bilo koji znak koji nije u opsegu. |
|
| \b \B | \b - Granica reči, tj. pozicija između kraja reči i razmaka. \B - NIJE granica reči. |
|
| \d \D | \d - cifra. Ekvivalentno [0-9]. \D - NIJE cifra. Ekvivalentno [^0-9]. |
|
| \w \W | \w - bilo koji znak reči, uključujući znak podvlačenja. Ekvivalentno [A-Za-z0-9_]. \W - suprotno od "\w". Ekvivalentno [^A-Za-z0-9_]. |
|
| \s \S | \s - razmakni znak. Ekvivalentno [\f\n\r\t\v]. \S - nerazmakni znak. Ekvivalentno [^\f\n\r\t\v]. |
|
| \cx | Kontrolni znak. Parametar "x" je u opsegu A-Z ili a-z. Na primer, "\cM" definiše Control-M ili znak povratka karice, "\cJ" - novi red, "\cL" - nova stranica, "\cI" - znak tabulacije, "\cK" - znak vertikalne tabulacije. |
|
| \f | Znak nove stranice. Ekvivalent "\x0c" i "\cL". | |
| \n | Znak novog reda. Ekvivalent "\x0a" i "\cJ". |
|
| \r | Znak povratka karice. Ekvivalent "\x0d" i "\cM". |
|
| \t | Znak tabulacije. Ekvivalent "\x09" i "\cI". |
|
| \v | Znak vertikalne tabulacije. Ekvivalent "\x0b" i "\cK". |
|
| \xn | Heksadekadni ASCII kod znaka. Mora sadržati tačno dva znaka. |
|
| \num | Referenca na prethodno fiksirane (pronađene) podnizove koji odgovaraju šablonu (SubMatches). "num" je pozitivni ceo broj, broj odgovora u kolekciji SubMatches; brojanje počinje od jedinice. Na primer, "(.)\1" definiše dva identična znaka koja slede jedan za drugim. |
|
| \un | Definiše Unicode znak po njegovom heksadekadnom kodu. "n" je četvorocifreni heksadekadni kod. |
|
