DevToys Web Pro iconDevToys Web ProBlogu
Tupatie ukadiriaji:
Jaribu kiendelezi cha kivinjari:

Kijaribu Usemi wa Kawaida

Mipangilio

Muundo

Kamba ya Jaribio

  • Mechi

    Weka muundo ili kuona mechi

    Badilisha

    Marejeleo

    Madarasa ya herufi

    .Herufi yoyote isipokuwa mstari mpya
    [abc]Linganisha a, b, au c
    [^abc]Linganisha chochote isipokuwa a, b, c
    [a-z]Masafa ya herufi (a hadi z)
    \dTarakimu (0-9)
    \DIsiyo tarakimu
    \wHerufi ya neno [a-zA-Z0-9_]
    \WHerufi isiyo ya neno
    \sNafasi tupu
    \SIsiyo nafasi tupu

    Nanga

    ^Mwanzo wa mfuatano/mstari
    $Mwisho wa mfuatano/mstari
    \bMpaka wa neno
    \BMpaka usio wa neno

    Herufi zilizotoroshwa

    \tKichupo
    \nMstari mpya
    \rKurudi mwanzo wa mstari
    \0Herufi batili (null)
    \xhhHerufi ya heksi (mf. \xFF)
    \uhhhhHerufi ya Unicode

    Vikundi na Marejeleo

    (abc)Kikundi cha kunasa
    (?:abc)Kikundi kisichonasa
    (?<name>abc)Kikundi cha kunasa chenye jina
    \1Marejeleo ya nyuma kwa kikundi 1
    \k<name>Marejeleo ya nyuma kwa kikundi chenye jina

    Uangaliaji wa muktadha

    (?=abc)Uangaliaji wa mbele chanya
    (?!abc)Uangaliaji wa mbele hasi
    (?<=abc)Uangaliaji wa nyuma chanya
    (?<!abc)Uangaliaji wa nyuma hasi

    Vikadirio na Ubadilishanaji

    a*0 au zaidi (mlafi)
    a+1 au zaidi (mlafi)
    a?0 au 1 (hiari)
    a{n}Haswa mara n
    a{n,}Mara n au zaidi
    a{n,m}Kati ya mara n na m
    a*?0 au zaidi (mvivu)
    a+?1 au zaidi (mvivu)
    a|bLinganisha a au b

    Ubadilishaji

    $1, $2Maudhui ya kikundi kilichonaswa
    $&Ulinganifu mzima
    $`Kabla ya ulinganifu
    $'Baada ya ulinganifu
    $$Herufi $ halisi
    Maelezo ya kiufundi

    Jinsi Kijaribu cha RegEx Kinavyofanya Kazi

    Zana Hii Hufanya Nini

    Kijaribu cha regex hukuruhusu kujaribu regular expressions dhidi ya maandishi ya mfano kwa wakati halisi. Hufanya kazi kama regex debugger na regex validator, kikisaidia wasanidi kujenga, kujaribu, na kuboresha misemo ya ulinganifu wa mifumo (pattern matching). Kijaribu hiki hutumia injini ya JavaScript RegExp (ECMAScript), hivyo sintaksia inaweza kutofautiana na PCRE, .NET, au injini za Java regex. Unapohitaji kujaribu regex mtandaoni, zana hii huonyesha mechi zote, makundi ya kunasa (capture groups), na uingizwaji (replacements). Zana hii inaunga mkono sintaksia ya JavaScript regex ikijumuisha bendera za JavaScript regex (g, i, m, s, u): global (g), case-insensitive (i), multiline (m), dotAll (s), na unicode (u). Huangazia mechi katika tungo ya majaribio, huonyesha capture groups, na inaweza kufanya operesheni za kutafuta-na-kubadilisha ili kuonyesha mapema jinsi regex ingegeuza maandishi.

    Matumizi ya Kawaida kwa Wasanidi

    Wasanidi hutumia vijaribu vya regex wanapojenga mifumo ya uthibitishaji, kuchanganua faili za logi, au kutoa data kutoka kwenye tungo. Kujaribu mifumo ya regexp husaidia kubaini hali za pembezoni, kutatua hitilafu za misemo changamano, na kuelewa jinsi bendera tofauti zinavyoathiri tabia ya ulinganifu. Wasanidi wengi hutumia vijaribu vya regex kuthibitisha anwani za barua pepe, nambari za simu, URL, au miundo mingine ya data iliyo na mpangilio. Zana hii ni muhimu unapofanya kazi na uthibitishaji wa fomu, uchanganuzi wa logi, au kazi za uchakataji wa maandishi. Vujaribu vya regex pia husaidia unapojifunza regular expressions, kwa kuwa huonyesha jinsi mifumo inavyolingana na maandishi kupitia urudiaji wa mechi na utoaji wa makundi. Unapojaribu regexp na maandishi ya mistari mingi au herufi maalum, zana hii husaidia wasanidi kuona hasa kinacholingana na kwa nini.

    Miundo ya Data, Aina, au Lahaja

    Vijaribu vya regex hushughulikia sintaksia ya JavaScript regular expression, ambayo inategemea regex ya mtindo wa Perl yenye tofauti kadhaa na injini nyingine za regex. Zana hii inaunga mkono character classes kama \dkwa tarakimu, \wkwa herufi za neno, na \skwa nafasi tupu (whitespace). Hushughulikia anchors ( ^, $), quantifiers (*, +, ?), na alternation (|). Bendera ya multiline huathiri jinsi ^na $zinavyolingana, ilhali bendera ya dotAll hufanya .ilingane na herufi za newline. Kuelewa tabia ya regex kwa mistari mipya ni muhimu kwa uchakataji wa maandishi ya mistari mingi. Kwa mfano, kujaribu muundo kama /\d-\d-\d/ dhidi ya tungo ya nambari ya simu huonyesha hasa ni sehemu zipi zinazoendana. Ushughulikiaji wa newline katika regex hutegemea bendera: muundo ^foo.*bar$ hulingana na "foo\nbar" tu kwa bendera ya dotAll (s), kwa kuwa .haulingani na newlines kwa chaguomsingi. Unapofanya kazi na mifumo ya regex ya newline, tumia \nkulinganisha newlines halisi, au \r\nkwa miisho ya mstari ya Windows.

    Mitego ya Kawaida na Matukio ya Pembeni

    Kosa la kawaida ni kusahau kuwa JavaScript regex hutumia forward slashes kama vitenganishi, si nukuu. Suala jingine ni kutoelewa jinsi bendera ya global inavyoathiri ulinganifu: bila hiyo, mechi ya kwanza tu hurudishwa, lakini ukiwa nayo, mechi zote hupatikana. Ushughulikiaji wa regex kwa mistari mipya unaweza kuwa mgumu: herufi .haulingani na newlines kwa chaguomsingi isipokuwa bendera ya dotAll itumike. Ukanushaji wa character class kwa [^...] unaweza kuchanganya, kwa kuwa hulinganisha herufi yoyote isiyo ndani ya darasa hilo. Quantifiers za greedy dhidi ya lazy ( *vs *?) hutenda tofauti na zinaweza kusababisha matokeo yasiyotarajiwa. Lookahead na lookbehind assertions ( (?=...), (?&lt;=...)) zina nguvu lakini zinaweza kuwa ngumu kutatua hitilafu. Wasanidi wanapaswa kujaribu mifumo ya regex na ingizo mbalimbali, ikijumuisha hali za pembezoni kama tungo tupu, herufi maalum, na herufi za unicode.

    Wakati wa Kutumia Zana Hii dhidi ya Msimbo

    Tumia kijaribu hiki cha regex kwa uundaji wa mifumo kwa haraka, kutatua hitilafu za misemo changamano, au kujifunza sintaksia ya regular expression. Ni bora kwa kujaribu mifumo ya regex kabla ya kuitekeleza kwenye msimbo, hasa unapofanya kazi na sintaksia usiyoizoea au mifumo changamano. Maoni ya kuona husaidia kubaini kwa nini muundo unalingana au haulingani na maandishi mahususi. Kwa msimbo wa uzalishaji, tumia vijaribu vya regex vilivyojumuishwa kwenye IDE au mifumo ya unit testing inayoweza kuthibitisha mifumo kama sehemu ya test suite yako. Zana za kivinjari ni bora kwa uundaji wa mwingiliano na kujifunza, ilhali suluhisho za msimbo hutoa uotomatiki, ujumuishaji na mabomba ya CI/CD, na uwezo wa kujaribu mifumo dhidi ya seti kubwa za data. Kwa programu changamano, majaribio ya regex ya kiotomatiki huhakikisha mifumo inafanya kazi ipasavyo katika ingizo tofauti na hali za pembezoni.