Reglulegar tjáningar (e. regluleg segð eða regular expressions) eru öflugt tól til að leita að, finna og vinna með ákveðin mynstur í texta. Þær eru mikið notaðar í vefþróun og forritun til að sannreyna innslátt, leita í gögnum og umbreyta textastrengjum. Þetta Regex prófunartól gerir þér kleift að prófa JavaScript reglulegar tjáningar á sýnistexta beint í vafranum þínum. Tólið sýnir hverja samsvörun og fangaðan hóp samstundis, sem auðveldar greiningu á því hvernig mynstrið hegðar sér við mismunandi aðstæður.
Virkni og notendaviðmót
Tólið skiptist í nokkra skýra hluta þar sem þú slærð inn gögn og færð niðurstöður samstundis.
Inntak
- Mynstur: Hér slærð þú inn reglulegu tjáninguna sem þú vilt prófa. Sem dæmi um sjálfgefið mynstur (placeholder) er notað
\d+. - Flög: Hér getur þú valið ákveðin flög sem breyta hegðun leitarinnar:
- g (Global): Finnur allar samsvaranir í stað þess að hætta eftir þá fyrstu.
- i: Hunsar hástafi og lágstafi við leitina.
- m (Multiline): Gerir það að verkum að táknin
^og$passa við upphaf og endi hverrar línu í stað þess að eiga aðeins við upphaf og endi alls strengsins. - s: Leyfir punktinum
.að passa líka við línuskipti.
- Prófunarstrengur: Textinn sem þú vilt prófa mynstrið þitt gegn. Sjálfgefinn texti í þessum reit er „Límdu eða skrifaðu texta til að prófa mynstrið þitt gegn“.
Úttak og niðurstöður
- Ljómaðar samsvaranir: Sýnir prófunarstrenginn þar sem allar samsvaranir eru ljómaðar upp til að auðvelda sjónræna greiningu.
- Samsvaranir: Listi yfir allar niðurstöður sem fundust. Ef mynstrið inniheldur sviga til að fanga ákveðna hluta textans, sýnir tólið hvern fangaðan hóp undir merkingunni Hópur
{n}. - Samsvaranir:
{count}: Sýnir heildarfjölda samsvarana sem fundust í textanum. - Stafir: Sýnir heildarfjölda stafa í prófunarstrengnum.
Reglur og takmarkanir við vinnslu
Tólið fylgir ákveðnum reglum og takmörkunum til að tryggja stöðugleika og skýrleika í niðurstöðum:
- Ef engar samsvaranir finnast í textanum birtir tólið skilaboðin „Engar samsvaranir.“.
- Ef setningafræði reglulegu tjáningarinnar er röng eða ófullkominn birtast skilaboðin „Ógild regluleg tjáning.“.
- Ef flugið g (Global) er ekki valið, leitar vélin aðeins að fyrstu samsvöruninni og skilar henni einni.
- Þegar flugið g er virkt, finnur tólið að hámarki 1.000 samsvaranir og sýnir að hámarki 100 spjöld með samsvörunum. Ef fjöldi samsvarana fer yfir þessi mörk birtast skilaboðin „Sýnir fyrstu
{max}.“. - Hægt er að hreinsa öll svæði í tólinu með því að smella á hnappinn „Hreinsa“, sem skilar stöðunni „Hreinsað.“. Ef ekkert mynstur er slegið inn sýnir tólið stöðuna „Sláðu inn mynstur til að prófa það.“.
Afköst og skelfileg bakrakning (Catastrophic Backtracking)
Eitt helsta vandamálið við skrif á reglulegum tjáningum er hönnun á mynstrum sem valda óhagkvæmri leit. Þetta gerist oft þegar notaðar eru hreiðraðar endurtekningar (eins og (a+)+) á texta sem næstum því passar við mynstrið. Við þessar aðstæður reynir JavaScript-vélin veldisvaxandi fjölda samsetninga áður en hún getur staðfest að textinn passi ekki, sem getur fryst vafrann.
Til að koma í veg fyrir að vafrinn frjósi er þetta tól með innbyggða tímamörk. Ef keyrsla á mynstri tekur meira en 2 sekúndur stöðvar tólið ferlið sjálfkrafa og birtir eftirfarandi villuskilaboð:
„Þetta mynstur tekur of langan tíma í keyrslu — það gæti verið skelfilega hægvirkt. Reyndu að einfalda það.“
Til að hámarka afköst reglulegra tjáninga er mælt með því að forðast óþarfa hreiðraðar endurtekningar og gera mynstur eins sértæk og mögulegt er.
Persónuvernd og gagnavinnsla
Þegar þú notar þetta tól þarftu ekki að hafa áhyggjur af því að viðkvæm gögn séu send yfir netið. Mynstrið þitt og texti eru prófuð í vafranum þínum. Ekkert er hlaðið upp til BroBroGo. Öll úrvinnsla og samsvörun fer fram staðbundið á tækinu þínu.
Algengar spurningar
Er öruggt að líma textann minn hér inn?
Já. Samsvörun fer alfarið fram í vafranum þínum — ekkert er sent til BroBroGo.
Hvað þýða g/i/m/s flögin?
- g finnur allar samsvaranir í stað þess að hætta eftir þá fyrstu.
- i hunsar hástafi/lágstafi.
- m gerir það að verkum að
^og$passa við upphaf og endi hverrar línu í stað alls strengsins. - s leyfir
.að passa líka við línuskipti.
Af hverju sagði tólið að mynstrið mitt tæki of langan tíma?
Sum mynstur geta valdið skelfilegri bakrakningu (catastrophic backtracking) — vélin reynir þá veldisvaxandi fjölda samsetninga áður en hún gefst upp, sem getur fryst vafrann. Þetta tól hættir við leit eftir 2 sekúndur ef þetta gerist, svo síðan sjálf frýs aldrei. Reyndu að einfalda hreiðraðar endurtekningar eins og (a+)+.