Teknobench

Tástálaí Regex

Tástáil sloinn rialta JavaScript beo le meaitseálacha aibhsithe, grúpaí gabhála, ionadú agus míniú simplí ar gach comhartha den phatrún.

Bratacha

Meaitseálacha
#SuíomhMeaitseáilGrúpaí

Mínithe an phatrúin

    Conas an tástálaí regex a úsáid

    1. Clóscríobh do phatrún in Slonn rialta, gan na slaiseanna máguaird. Taispeántar na slaiseanna agus na bratacha gníomhacha timpeall an réimse, mar a bheadh in /pattern/g.
    2. Cuir tic sna Bratacha a theastaíonn uait: g (domhanda), i (déan neamhaird de chás), m (il-líne), s (dotAll), u (unicode) nó y (greamaitheach).
    3. Greamaigh an téacs le cuardach isteach in Téacs tástála. Aibhsítear na meaitseálacha agus tú ag clóscríobh, agus liostálann an tábla gach meaitseáil lena shuíomh agus grúpaí gabhála.
    4. Chun ionadú a thriail, líon isteach Ionadú. Taispeánann an bosca Toradh tar éis ionadaithe an téacs le gach meaitseáil ionadaithe, réidh le cóipeáil.
    5. Léigh an Mínithe an phatrúin chun a sheiceáil cad a dhéanann gach cuid de do regex. Gan a fhios agat cá dtosóidh tú? Cliceáil Luchtaigh sampla.

    Cad a thaispeánann an tástálaí

    • Meaitseálacha aibhsithe: marcáiltear gach meaitseáil sa téacs tástála, ionas gur féidir leat a fheiceáil láithreach cad a ghabhtar agus cad a chailltear.
    • Tábla meaitseálacha: uimhir gach meaitseála, a shuíomh (fritháireamh carachtar ón tús, ag comhaireamh ó 0), an téacs meaitseáilte, agus luach gach grúpa gabhála. Taispeántar grúpaí ainmnithe ar nós (?<year>\d{4}) faoina n-ainm, agus taispeántar grúpaí nár ghlac páirt sa mheaitseáil mar “(gan meaitseáil)”. Liostaítear na chéad 1,000 meaitseáil.
    • Ionadú: úsáideann an téacs ionadaithe comhréir JavaScript: $1 nó $2 do ghrúpaí uimhrithe, $<name> do ghrúpaí ainmnithe, $& don mheaitseáil iomlán, agus $$ do shiombail dollar litriúil. Gan an bhratach g, ní athraítear ach an chéad mheaitseáil.
    • Míniú: roinntear an patrún ina chomharthaí (téacs litriúil, aicmí carachtar, ancairí, grúpaí, cainníochtóirí, lookarounds, cúltagairtí), gach ceann le cur síos gearr. Cuirtear grúpaí neadaithe isteach, rud a fhágann go bhfuil patrúin fhada i bhfad níos éasca le hiniúchadh.

    Na bratacha i mbeagán focal

    Bratach Éifeacht
    g Aimsíonn gach meaitseáil in ionad stopadh ag an gcéad cheann
    i Déanann neamhaird den difríocht idir cás uachtair agus íochtair
    m Meaitseálann ^ agus $ ag tús agus ag deireadh gach líne
    s Meaitseálann . briseadh líne freisin
    u Mód Unicode iomlán: láimhseáiltear \u{…}, \p{…} agus emoji mar charachtair aonair
    y Greamaitheach: ní mór gach meaitseáil tosú go díreach san áit ar chríochnaigh an ceann roimhe

    Cúlrianú tubaisteach

    Tógann roinnt patrún am easpónantúil ar théacs a mheaitseálann beagnach. Is é an sampla clasaiceach (a+)+$ tástáilte i gcoinne rith fada de a agus b ina dhiaidh: triaileann an t-inneall gach bealach chun na a a roinnt idir an dá chainníochtóir sula n-éiríonn sé as. Tá suíomhanna gréasáin fíor tugtha anuas ag an bhfadhb seo, ar a dtugtar ReDoS.

    Cosnaíonn an uirlis seo do bhrabhsálaí ar thrí bhealach. Ritheann an mheaitseáil in oibrí cúlra a stopfar tar éis 1.5 soicind; tá an téacs tástála teoranta do 100,000 carachtar; agus tugann an míniú rabhadh duit nuair a bhíonn cainníochtóir eile gan teorainn i ngrúpa athdhéanta. Nuair a théann patrún in éag, athscríobh é ionas gur féidir gach carachtar a mheaitseáil ar bhealach amháin, mar shampla a+$ in ionad (a+)+$.

    Ceisteanna coitianta

    Cén bhlas regex a úsáideann an uirlis seo?

    Úsáideann sí inneall JavaScript (ECMAScript) do bhrabhsálaí, díreach mar a dhéanfadh new RegExp() agus String.prototype.replace() i do chód. Tá an chuid is mó den chomhréir roinnte le PCRE, Python agus Java, ach tá difríochtaí in roinnt gnéithe: níl cainníochtóirí seilbheacha ná grúpaí adamhacha ann i JavaScript, agus tacaítear le lookbehind i ngach brabhsálaí reatha.

    Cén fáth nach bhfaigheann mo phatrún ach meaitseáil amháin?

    Tá an bhratach g as. Gan í, stopann JavaScript tar éis na chéad mheaitseála, agus ní athraíonn an t-ionadú ach an ceann sin.

    Conas ponc, lúibín cearnach nó comhartha ceiste litriúil a mheaitseáil?

    Éalaigh é le cúlslais: \., \[, \?. Taispeánann an míniú carachtair éalaithe mar “(éalaithe)” ionas gur féidir leat a sheiceáil.

    An seoltar mo théacs áit ar bith?

    Ní sheoltar. Ní phróiseáiltear an patrún agus an téacs ach i do bhrabhsálaí, rud a fhágann go bhfuil an uirlis seo sábháilte do chomhaid logála nó do shonraí ina bhfuil faisnéis phearsanta.

    Cén fáth a bhfuil an suíomh difriúil ón gcolún i m'eagarthóir?

    Comhaireamhtar suíomhanna carachtair ó 0, thar gach líne, mar a dhéanann match.index JavaScript. Áirítear briseadh líne mar charachtar amháin, agus áirítear emoji lasmuigh den Phlána Il-Teangach Bunúsach mar dhá charachtar.