Regex-generator från exempel
Att skriva en regex för hand för ett ordernummer, en fakturareferens eller ett datum är pilligt och lätt att få fel. Klistra in en exempelsträng med formatet du vill känna igen: det här verktyget läser den från vänster till höger, gör om varje följd av siffror, versaler och gemener till en teckenklass med rätt längd och låter skiljetecken och symboler stå kvar som literala tecken. Du får ett förankrat mönster att utgå från och finslipa för hand.
Så fungerar det
-
1
Ange ett exempel
Skriv eller klistra in en exempelsträng som representerar formatet du vill känna igen, till exempel `Order #12345 placed on 2026-04-16`.
-
2
Generera mönstret
Verktyget går igenom exemplet tecken för tecken och ersätter varje följd av samma sorts tecken med en teckenklass med dess längd.
-
3
Läs uppdelningen
Under mönstret förklarar en komponentlista varje del, så att du ser vilken del som kände igen siffror, bokstäver eller literal text.
-
4
Kopiera och finslipa
Använd mönstret som utgångspunkt. Justera de fasta längderna eller klasserna för hand så att det täcker hela spannet av dina riktiga data.
Så byggs mönstret
Verktyget läser exemplet från vänster till höger. När det stöter på en följd av samma sorts tecken skapar det en teckenklass i storlek med den följden:
- en följd av siffror blir
\d{n}, därnär antalet siffror - en följd av versaler
A-Zblir[A-Z]{n} - en följd av gemener
a-zblir[a-z]{n} - ett enda mellanslag blir
\s, och flera mellanslag blir\s{n} - allt annat (skiljetecken, symboler, bokstäver med accent eller icke-latinska tecken) behålls som escapat literalt tecken
Det färdiga mönstret omges av ^ och $ så att det känner igen hela strängen från början till slut, inte bara en del.
Exempel
För exemplet Order #12345 placed on 2026-04-16 skapar verktyget:
/^[A-Z]{1}[a-z]{4}\s\#\d{5}\s[a-z]{6}\s[a-z]{2}\s\d{4}\-\d{2}\-\d{2}$/
Order är en versal följd av fyra gemener; 12345 blir \d{5}; och datumet 2026-04-16 blir \d{4}\-\d{2}\-\d{2}.
Vad det gör och inte gör
- Längderna är fasta.
12345blir\d{5}, som känner igen exakt fem siffror, inte “en eller flera”. Om antalet varierar i dina data ändrar du{5}för hand till+eller ett intervall som{3,8}. - Det utgår från ett enda exempel. Det speglar strukturen hos den enda sträng du ger, så det kan inte generalisera över flera exempel på egen hand. Ge det den mest representativa strängen.
- Bara
A-Zocha-zräknas som bokstäver. Tecken med accent och icke-latinska tecken behålls som literaler; byt ut dem mot en klass som\weller\p{L}om du vill att de ska känna igen en bredare uppsättning. - En regex kan inte uttrycka allt. Sådant som balanserade parenteser ligger utanför räckhåll för varje regex, hur många exempel du än ger. För nästlade strukturer behöver du en parser, inte ett mönster.
Ett bra arbetsflöde
- Generera ett mönster från ett tydligt, representativt exempel.
- Lätta på de fasta längderna (
{5}blir+eller{3,8}) där längden varierar. - Klistra in mönstret i Regex-testaren med en större uppsättning riktiga strängar.
- Justera tills det känner igen allt det ska och inget det inte ska.
Vanliga frågor
Ett. Generatorn läser en enda exempelsträng och speglar dess struktur. Välj den sträng som bäst representerar ditt format och bredda sedan mönstret för hand för övriga fall.
Verktyget räknar de exakta tecknen i ditt exempel, så fem siffror blir \d{5}. Om antalet varierar i riktiga data byter du {5} mot +, * eller ett intervall som {3,8}.
Ankarna gör att mönstret känner igen hela strängen från början till slut. Ta bort dem om du vill söka efter mönstret inuti en längre text.
Det känner igen A-Z och a-z som bokstäver. Alla andra tecken, inklusive bokstäver med accent, kyrilliska eller CJK, behålls som literaler. Byt ut det för hand mot en klass som \w eller \p{L} om du vill känna igen mer.
Standardsyntax (\d, [A-Z], {n}) som fungerar oförändrad i PCRE, JavaScript, Python och de flesta motorer.
Relaterade verktyg
Webpack-konfigurationsgenerator
Skapa en webpack.config.js för webpack 5 med vanlig JavaScript, React eller Vue: TypeScript, Babel, CSS eller Sass, bilder, HtmlWebpackPlugin, en utvecklingsserver och raden för npm install.
Protocol Buffers-avkodare
Avkoda Protobuf-byte lokalt från hex, Base64, Base64URL, text eller fil, granska fälttolkningar och exportera en privat rapport.
XSD-validerare
Validera ett XML-dokument mot ett XSD-schema och rapportera element- och typavvikelser med exakta radnummer.
YAML till JSON
Omvandla YAML-konfiguration till JSON för verktyg och API:er som bara accepterar JSON. Hanterar ankare, merge-nycklar och nästlade strukturer.
XML-formaterare
Snygga till XML-dokument med konsekvent indrag och fånga formfel med exakta radnummer.
XML till JSON
Omvandla XML-dokument till ren JSON, med bevarade attribut, textnoder och arrayer där det behövs. Tre stilar: kompakt, Badgerfish eller literal.
Verktyget finns på andra språk
- Generador de Regex a partir de una muestra [ES]
- Générateur de Regex à partir d'un exemple [FR]
- サンプルから正規表現を生成 [JA]
- Gerador de Regex a partir de um exemplo [PT]
- Trình tạo Regex từ mẫu [VI]
- مولّد Regex من عيّنة [AR]
- Generator Regex dari Contoh [ID]
- 샘플로 정규식 생성 [KO]
- Regex-Generator aus Beispiel [DE]
- Regex-generator uit voorbeeld [NL]
- ตัวสร้าง Regex จากตัวอย่าง [TH]
- Generator Regex z przykładu [PL]
- Regex Generator from Sample [EN]
- Generatore di Regex da un esempio [IT]
- Генератор Regex из примера [RU]
- Örnekten Regex Oluşturucu [TR]
- 从示例生成正则 [ZH]