Sări la conținut

Convertor de glob în expresie regulată

Transformați modele glob ca *.js sau **/*.test.ts în expresia regulată corespunzătoare.

Intrare
Testați căi (opțional)
Ieșire

Convertor de glob în expresie regulată

Lipiți unul sau mai multe modele glob și acest instrument construiește expresia regulată corespunzătoare pentru fiecare, gată de a fi folosită într-un script, fișier de configurație sau limbaj care înțelege doar regex. Conversia modelelor funcționează și invers: schimbați direcția pentru a transforma o expresie regulată simplă într-un model în stil glob. Fiecare rând al intrării este tratat ca propriul model, deci puteți converti un lot întreg — o listă de excluderi de compilare, un set de filtre de rute, o listă de filtre de fișiere — într-o singură trecere.

Opțiunea de stil glob ajustează modul în care se citește un model: shell îl tratează ca un wildcard de nume de fișier simplu, .gitignore adaugă propria regulă Git că un model fără bară oblică se potrivește oricărei adâncimi de folder, în timp ce un model care conține o bară este ancorat la acea locație, iar minimatch acceptă alternații cu acolade ca *.{js,ts}. Comutați dacă un dublu asterisc (**) poate traversa separatoarele de director sau se comportă ca un singur asterisc, dacă un wildcard inițial trebuie să se potrivească cu fișierele ascunse ca .env, sensibilitate la majuscule și dacă rezultatul este ancorat cu ^ și $ pentru a se potrivi cu întregul șir în loc de doar o parte. Clasele de caractere cum ar fi [abc] și [!0-9] sunt de asemenea convertite.

Lipiți o listă de căi în al doilea câmp pentru a vedea în timp real care dintre modelele dvs. se potrivesc cu care căi — util pentru a verifica o regulă .gitignore sau un model de rută înainte de a o aplica. Ieșirea rămâne în ordinea în care au fost introduse modelele și ambele terminații de rând CRLF și LF sunt acceptate.

Tot funcționează local în browserul dvs: modelele și căile de test nu ies niciodată din dispozitivul dvs. Când ați terminat, copiați expresiile, descărcați un fișier .txt sau trimiteți ieșirea înapoi la intrare pentru a o rafina în continuare.

FAQ

Ce potrivește un dublu asterisc (**)?
Cu "Dublu asterisc traversează bara oblică" activat, ** se potrivește cu orice număr de caractere inclusiv separatori de cale, deci a/**/z se potrivește cu a/b/c/z. Dezactivați-l și ** se comportă ca un singur asterisc, oprind la următoarea /.
Cum diferă stilul .gitignore de un glob shell simplu?
Urmând propria regulă Git, un model .gitignore fără bară oblică (cum ar fi *.log) se potrivește la orice adâncime din copac, în timp ce un model care conține o bară (cum ar fi build/*.log) este ancorat la acea locație exactă.
Poate converti o regex înapoi în glob?
Da, schimbați Direcție la "Regex → glob". Aceasta este o conversie de efort maxim orientată spre modele simple — recunoaște blocuri de construcție comune cum ar fi [^/]*, (?:a|b) și clase de caractere, dar o expresie regulată arbitrar de complexă s-ar putea să nu aibă un echivalent glob curat.
Astericul se potrivește cu fișierele ascunse ca .env?
Nu în mod implicit: un wildcard la începutul unui segment de cale sare peste un punct inițial, potrivind comportamentul tipic shell și .gitignore. Activați "Wildcard-uri potrivesc fișierele ascunse (cu punct)" pentru a le include.
Textul meu este încărcat undeva?
Nu. Conversia și testarea căii funcționează în întregime în browserul dvs — nimic din ceea ce lipiți nu iese din dispozitivul dvs.