Subukan ang mga regular expression ng JavaScript gamit ang halimbawa ng teksto
Gamitin ang tool na ito kapag kailangan mong suriin kung ano ang tinutugma ng isang JavaScript regex bago ito ilagay sa frontend, Node.js, o TypeScript code.
I-paste ang halimbawa ng teksto, ilagay ang pattern nang walang nakabalot na slashes, piliin ang mga flag, pagkatapos suriin ang mga tugma, grupo, at output ng pagpapalit.
Ano ang ibig sabihin ng bawat resulta
- Naka-highlight na mga tugma ipinapakita kung saan tumugma ang pattern sa loob ng halimbawa ng teksto.
- Mga tugma at grupo naglilista ng mga saklaw ng tugma, naka-numero na mga grupo, at mga pinangalanang grupo.
- Output ng pagpapalit nagpe-preview ng JavaScript
String.replace()na may iyong string ng pagpapalit. - Kopyahin ang match JSON kinokopya ang naka-istrukturang datos ng tugma. Kopyahin ang replacement kinokopya ang preview na teksto ng pagpapalit.
- Kopyahin ang URL kinokopya ang kasalukuyang pattern, mga flag, pagpapalit, at halimbawa ng teksto sa URL hash.
Mga suportadong flag
| Flag | Name | Effect |
|---|---|---|
g | Global | Hanapin ang lahat ng mga tugma sa halip na ang una lamang. |
i | Huwag pansinin ang kaso | Hanapin ang mga letra nang hindi pinapansin ang malaking/maliit na titik. |
m | Multiline | Make ^ and $ gumana bawat linya. |
s | DotAll | Let . tumutugma sa mga line break. |
u | Unicode | Gumamit ng mga panuntunang may kamalayan sa Unicode para sa pagtutugma. |
y | Sticky | Tumugma lamang mula sa kasalukuyang JavaScript lastIndex. |
Limits
- Ito ay isang JavaScript
RegExptester, hindi isang PCRE, Python, Java, SQL, o .NET regex tester. - Ang halimbawa ng teksto at nakolektang mga tugma ay limitado upang panatilihing mabilis ang pahina.
- Ang ilang halatang nested-quantifier na mga pattern ay naka-block, ngunit hindi ito isang buong ReDoS analyzer.
- Ang JavaScript ay hindi nagbibigay ng synchronous timeout para sa isang regex execution.
- Maaaring isama ng mga URL hash ang na-paste na halimbawa ng teksto. Alisin ang mga pribadong log o lihim bago ibahagi ang kinopyang URL.
Mga Madalas Itinanong
Anong regex syntax ang ginagamit ng pahinang ito?
Gumagamit ito ng JavaScript RegExp syntax. Gamitin ito para sa browser, Node.js, at TypeScript na trabaho sa regex. Maaaring magkaiba ang pag-uugali ng mga pattern na isinulat para sa PCRE, Python, Java, SQL, o .NET.
Bakit nakikita ko lang ang isang tugma?
Idagdag ang g flag upang kolektahin ang lahat ng mga tugma. Kung wala g, karaniwang ibinabalik ng JavaScript ang unang tugma.
Maaari ko bang gumamit ng mga pinangalanang grupo sa mga pagpapalit?
Oo. Ang mga pinangalanang grupo tulad ng (?<level>ERROR|WARN) ay lumalabas sa mga detalye ng tugma at maaaring muling gamitin sa teksto ng pagpapalit bilang $<level>.
Ano ang pagkakaiba sa pagitan ng Kopyahin ang match JSON at Kopyahin ang replacement?
Kinokopya ng Copy match JSON ang mga saklaw at grupo ng tugma bilang JSON. Kinokopya ng Copy replacement ang teksto na nilikha ng preview ng pagpapalit.
Maaari ba nitong mahuli ang mga hindi ligtas na backtracking na mga pattern?
Bahagyang lang. Binablock ng tool ang ilang halatang nested-quantifier na mga pattern at nililimitahan ang laki ng input, ngunit hindi ito isang buong ReDoS analyzer.