DevToys Web Pro iconDevToys Web ProБлог
Ocenite nas:
Isprobajte ekstenziju za pregledač:

Tester regularnih izraza

Podešavanja

Obrazac

Test string

  • Poklapanja

    Unesite obrazac da biste videli poklapanja

    Zameni

    Referenca

    Klase znakova

    .Bilo koji znak osim novog reda
    [abc]Poklapa a, b ili c
    [^abc]Poklapa sve osim a, b, c
    [a-z]Opseg znakova (a do z)
    \dCifra (0-9)
    \DNije cifra
    \wZnak reči [a-zA-Z0-9_]
    \WZnak koji nije znak reči
    \sRazmak
    \SNije razmak

    Sidra

    ^Početak niske/reda
    $Kraj niske/reda
    \bGranica reči
    \BNije granica reči

    Escape znakovi

    \tTabulator
    \nNovi red
    \rPovratak na početak reda
    \0Nulti znak
    \xhhHeksadecimalni znak (npr. \xFF)
    \uhhhhUnicode znak

    Grupe i reference

    (abc)Grupa sa hvatanjem
    (?:abc)Grupa bez hvatanja
    (?<name>abc)Imenovana grupa sa hvatanjem
    \1Povratna referenca na grupu 1
    \k<name>Povratna referenca na imenovanu grupu

    Lookaround

    (?=abc)Pozitivni lookahead
    (?!abc)Negativni lookahead
    (?<=abc)Pozitivni lookbehind
    (?<!abc)Negativni lookbehind

    Kvantifikatori i alternacija

    a*0 ili više (pohlepno)
    a+1 ili više (pohlepno)
    a?0 ili 1 (opciono)
    a{n}Tačno n puta
    a{n,}n ili više puta
    a{n,m}Između n i m puta
    a*?0 ili više (lenjo)
    a+?1 ili više (lenjo)
    a|bPoklapa a ili b

    Zamena

    $1, $2Sadržaj uhvaćene grupe
    $&Celo poklapanje
    $`Pre poklapanja
    $'Posle poklapanja
    $$Doslovni znak $
    Tehnički detalji

    Како ради RegEx tester

    Šta alat radi

    Regex tester вам омогућава да тестирате регуларне изразе над примером текста у реалном времену. Функционише и као regex дебагер и као regex валидатор, помажући програмерима да граде, тестирају и усавршавају изразе за поклапање шаблона. Овај tester користи JavaScript RegExp engine (ECMAScript), па се синтакса може разликовати од PCRE, .NET или Java regex engine-а. Када треба да тестирате regex online, овај алат приказује сва поклапања, capture групе и замене. Алат подржава JavaScript regex синтаксу укључујући JavaScript regex заставице (g, i, m, s, u): global (g), case-insensitive (i), multiline (m), dotAll (s) и unicode (u). Истиче поклапања у тест стрингу, приказује capture групе и може да изврши операције проналажења и замене како би се приказало како би regex трансформисао текст.

    Uobičajeni slučajevi upotrebe za programere

    Програмери користе regex тестере при изради шаблона за валидацију, парсирању лог датотека или издвајању података из стрингова. Тестирање regexp шаблона помаже да се идентификују гранични случајеви, дебагују сложени изрази и разуме како различите заставице утичу на понашање поклапања. Многи програмери користе regex тестере за валидацију имејл адреса, бројева телефона, URL-ова или других структурираних формата података. Алат је вредан при раду са валидацијом форми, анализом логова или задацима обраде текста. Regex тестери такође помажу при учењу регуларних израза, јер показују како шаблони поклапају текст кроз итерацију поклапања и издвајање група. При тестирању regexp-а са вишелинијским текстом или специјалним карактерима, алат помаже програмерима да виде тачно шта се поклапа и зашто.

    Formati podataka, tipovi ili varijante

    Regex тестери обрађују JavaScript синтаксу регуларних израза, која је заснована на Perl-стилу regex-а уз неке разлике у односу на друге regex engine-е. Алат подржава класе карактера као што су \d за цифре, \w за карактере речи и \s за размаке. Обрађује сидра ( ^, $), квантификаторе (*, +, ?) и алтернацију (|). Заставица multiline утиче на то како ^ и $ поклапају, док заставица dotAll чини да . поклапа карактере новог реда. Разумевање понашања regex-а са новим редовима је кључно за обраду вишелинијског текста. На пример, тестирање шаблона као што је /\d-\d-\d/ над стрингом броја телефона показује тачно који делови се поклапају. Руковање новим редовима у regex-у зависи од заставица: шаблон ^foo.*bar$ поклапа "foo\nbar" само са заставицом dotAll (s), јер . подразумевано не поклапа нове редове. Када радите са regex шаблонима за нови ред, користите \n да поклопите дословне нове редове, или \r\n за Windows завршетке линија.

    Uobičajene greške i rubni slučajevi

    Једна уобичајена грешка је заборављање да JavaScript regex користи косе црте као раздвајаче, а не наводнике. Други проблем је погрешно разумевање како global заставица утиче на поклапање: без ње се враћа само прво поклапање, а са њом се проналазе сва поклапања. Руковање новим редовима у regex-у може бити незгодно: карактер . подразумевано не поклапа нове редове осим ако се користи dotAll заставица. Негација класе карактера са [^...] може бити збуњујућа, јер поклапа било који карактер који није у класи. Похлепни наспрам лењих квантификатора ( * наспрам *?) се понашају различито и могу изазвати неочекиване резултате. Lookahead и lookbehind асерције ( (?=...), (?&lt;=...)) су моћне, али могу бити тешке за дебаговање. Програмери треба да тестирају regex шаблоне са различитим улазима, укључујући граничне случајеве као што су празни стрингови, специјални карактери и unicode карактери.

    Kada koristiti ovaj alat umesto koda

    Користите овај regex tester за брз развој шаблона, дебаговање сложених израза или учење синтаксе регуларних израза. Идеалан је за тестирање regex шаблона пре имплементације у коду, посебно када радите са непознатом синтаксом или сложеним шаблонима. Визуелни повратни сигнал помаже да се утврди зашто се шаблон поклапа или не поклапа са одређеним текстом. За продукциони код користите regex тестере интегрисане у IDE-ове или оквире за јединично тестирање који могу да валидирају шаблоне као део вашег тест пакета. Алатке у прегледачу су одличне за интерактивни развој и учење, док решења заснована на коду пружају аутоматизацију, интеграцију са CI/CD цевоводима и могућност тестирања шаблона над великим скуповима података. За сложене апликације, аутоматизовано regex тестирање осигурава да шаблони исправно раде на различитим улазима и граничним случајевима.