Како да го користите објаснувачот на Regex
Внесете или залепете регуларен израз во полето за внесување и алатката веднаш го разложува во објаснување на разбирлив јазик. Секој токен на Regex е идентификуван и опишан: класи на знаци, квантификатори, сидра, групи, предвидувачки тврдења и литерални знаци. Панелот со статистики го прикажува вкупниот број на токени, дали образецот содржи групи за зафаќање и дали користи квантификатори. Објаснувањето се ажурира во реално време додека пишувате, овозможувајќи ви да изградите образец и да видите како секое додавање го менува значењето.
Оваа алатка е особено корисна за читање на Regex од друг автор, дебагирање на образец кој не совпаѓа како што е очекувано или учење на Regex синтаксата преку експериментирање со различни токени. Копирајте го објаснувањето за да го вклучите како коментар во вашиот изворен код, правејќи ги сложените обрасци разбирливи за идните одржувачи.
Типови на токени на регуларни изрази
Регуларните изрази се изградени од неколку типови на токени, секој со специфична цел. Разбирањето на овие основни елементи е клучот за ефикасно читање и пишување на Regex обрасци. Иако синтаксата може да изгледа криптична на прв поглед, постојат само неколку основни концепти кои се комбинираат за создавање сложено однесување на совпаѓање.
Класи на знаци и кратенки
Класите на знаци совпаѓаат со еден знак од дефиниран збир. Квадратните загради дефинираат прилагодени класи: [abc] совпаѓа со a, b или c. Опсезите се дефинираат со цртички: [a-z] совпаѓа со која било мала буква. Негираните класи користат циркумфлекс: [^0-9] совпаѓа со сe освен цифра. Класите кратенки обезбедуваат вообичаени обрасци: \d совпаѓа со која било цифра (еквивалентно на [0-9]), \w совпаѓа со знаци на зборови (букви, цифри, долна црта), \s совпаѓа со празни знаци (празно место, таб, нов ред), а точката . совпаѓа со кој било знак освен нов ред.
Квантификатори
Квантификаторите контролираат колку пати претходниот токен треба да се појави. Квантификаторот + совпаѓа еден или повеќе пати. Квантификаторот * совпаѓа нула или повеќе пати. Квантификаторот ? совпаѓа нула или еден пат (опционален). Виткастите загради специфицираат точни бројки: {3} совпаѓа точно 3 пати, {2,5} совпаѓа помеѓу 2 и 5 пати, а {3,} совпаѓа 3 или повеќе пати. Стандардно, квантификаторите се алчни (совпаѓаат со максимум), но додавањето на ? по нив ги прави мрзеливи (совпаѓаат со минимум).
Сидра и граници
Сидрата не совпаѓаат со знаци туку со позиции во низата. Циркумфлексот ^ совпаѓа со почетокот на низата (или на линијата во повеќелиниски режим). Знакот за долар $ совпаѓа со крајот. Границата на збор \b совпаѓа со позицијата помеѓу знак на збор и знак кој не е збор, корисно за совпаѓање на цели зборови без зафаќање на околните празни места или интерпункција.
Групи и алтернација
Заградите создаваат групи кои можат да бидат квантифицирани како единица и опционално го зафаќаат совпаднатиот текст. Образецот (abc)+ совпаѓа со едно или повеќе повторувања на секвенцата "abc". Знакот за цевка | внатре во група создава алтернација: (мачка|куче) совпаѓа со "мачка" или "куче". Групите без зафаќање (?:...) обезбедуваат групирање без оптоварувањето на зафаќањето. Именуваните групи (?<име>...) доделуваат име на зафатениот текст за полесна референца во кодот.
Често поставувани прашања
Што е Regex?
Низа од знаци која дефинира образец за пребарување, користена во програмирањето за наоѓање, совпаѓање, валидација и манипулација на низи. Поддржана од практично сите програмски јазици.
Како да прочитате регуларен израз?
Читајте од лево кон десно идентификувајќи го секој токен: литерални знаци, класи на знаци (\d, \w), квантификатори (+, *, ?), сидра (^, $) и групи (загради). Оваа алатка го автоматизира овој процес.
Што се групи за зафаќање?
Делови од образецот во загради кои го зафаќаат совпаднатиот текст за подоцнежна референца. Групите без зафаќање (?:...) групираат без зафаќање. Именуваните групи (?<име>...) овозможуваат референца по име.
Што е мрзеливо наспроти алчно совпаѓање?
Алчните квантификатори (*, +) совпаѓаат со максимум. Додавањето на ? ги прави мрзеливи, совпаѓајќи со минимум. Користете мрзеливо совпаѓање за да го најдете најкраткото совпаѓање.
Што се предвидувачки и ретроспективни тврдења?
Тврдења со нулта ширина кои проверуваат образец без да го вклучат во совпаѓањето. (?=...) е позитивно предвидувачко тврдење, (?!...) е негативно, (?<=...) е позитивно ретроспективно тврдење, (?<!...) е негативно.
Save your results & get weekly tips
Get calculator tips, formula guides, and financial insights delivered weekly. Join 10,000+ readers.
No spam. Unsubscribe anytime.