Δοκιμαστής Regex

Δοκιμάστε κανονικές εκφράσεις JavaScript σε δείγμα κειμένου, εξετάστε τις ομάδες σύλληψης και τις ονομαστικές ομάδες και προεπισκόπηση της εξόδου αντικατάστασης τοπικά στον περιηγητή σας.

Όλες οι δοκιμές regex εκτελούνται τοπικά στον περιηγητή σας. Το τρέχον μοτίβο, οι σημαίες, η αντικατάσταση και το δείγμα κειμένου αποθηκεύονται στο hash του URL για αντιγραφή/επικόλληση και κοινή χρήση.
0 χαρακτήρες
Μην συμπεριλαμβάνετε τις περιβάλλουσες κάθετες (/)
Σημαίεςg

Υποστηριζόμενες σημαίες: global, ignore case, multiline, dotAll, unicode, και sticky.

Προαιρετικό: χρησιμοποιήστε $1 ή $<name> ομάδες

Γρήγορα παραδείγματα

Δοκιμάστε κανονικές εκφράσεις JavaScript με δείγμα κειμένου

Χρησιμοποιήστε αυτό το εργαλείο όταν πρέπει να ελέγξετε τι ταιριάζει μια κανονική έκφραση JavaScript πριν την εισάγετε σε κώδικα frontend, Node.js ή TypeScript.

Επικολλήστε δείγμα κειμένου, εισάγετε το πρότυπο χωρίς περιτρίμματα '/', επιλέξτε σημαίες, και στη συνέχεια ελέγξτε τις αντιστοιχίες, τις ομάδες και την προεπισκόπηση αντικατάστασης.

Τι σημαίνει κάθε αποτέλεσμα

  • Επισημασμένες αντιστοιχίες δείχνει πού ταιριάζει το πρότυπο μέσα στο δείγμα κειμένου.
  • Αντιστοιχίες και ομάδες καταγράφει τα εύρη αντιστοιχιών, τις αριθμημένες ομάδες και τις ονομασμένες ομάδες.
  • Αποτέλεσμα αντικατάστασης προεπισκόπηση JavaScript String.replace() με τη συμβολοσειρά αντικατάστασής σας.
  • Αντιγραφή JSON αντιστοιχιών αντιγράφει δομημένα δεδομένα αντιστοιχιών. Αντιγραφή αντικατάστασης αντιγράφει το κείμενο προεπισκόπησης αντικατάστασης.
  • Αντιγραφή URL αντιγράφει το τρέχον πρότυπο, τις σημαίες, την αντικατάσταση και το δείγμα κειμένου στο hash του URL.

Υποστηριζόμενες σημαίες

Flag Name Effect
g Global Βρείτε όλες τις αντιστοιχίες αντί μόνο της πρώτης.
i Αγνόηση πεζών/κεφαλαίων Εντοπίστε γράμματα χωρίς διάκριση πεζών/κεφαλαίων.
m Multiline Make ^ and $ λειτουργούν ανά γραμμή.
s DotAll Let . ταιριάζει με αλλαγές γραμμής.
u Unicode Χρησιμοποιήστε κανόνες αντιστοίχισης με υποστήριξη Unicode.
y Sticky Ταιριάξτε μόνο από το τρέχον JavaScript lastIndex.

Limits

  • Αυτό είναι ένα RegExp εργαλείο δοκιμής JavaScript, όχι για PCRE, Python, Java, SQL ή .NET.
  • Το δείγμα κειμένου και οι συλλεχθείσες αντιστοιχίες έχουν όριο για να διατηρείται η σελίδα ανταποκριτική.
  • Ορισμένα προφανή πρότυπα με εμφωλευμένους πολλαπλασιαστές αποκλείονται, αλλά αυτό δεν είναι πλήρες εργαλείο ανάλυσης ReDoS.
  • Η JavaScript δεν παρέχει συγχρονισμένο timeout για μία εκτέλεση regex.
  • Τα hash του URL μπορεί να περιλαμβάνουν επικολλημένο δείγμα κειμένου. Αφαιρέστε ιδιωτικά αρχεία καταγραφής ή μυστικά πριν μοιραστείτε ένα αντιγραμμένο URL.

Συχνές Ερωτήσεις

Ποια σύνταξη regex χρησιμοποιεί αυτή η σελίδα;

Χρησιμοποιεί JavaScript RegExp Χρησιμοποιεί σύνταξη RegExp για browser, Node.js και TypeScript. Τα πρότυπα γραμμένα για PCRE, Python, Java, SQL ή .NET μπορεί να συμπεριφέρονται διαφορετικά.

Γιατί βλέπω μόνο μία αντιστοιχία;

Προσθέστε το g σημαία για να συλλέξετε όλες τις αντιστοιχίες. Χωρίς g, η JavaScript συνήθως επιστρέφει την πρώτη αντιστοιχία.

Μπορώ να χρησιμοποιήσω ονομασμένες ομάδες στις αντικαταστάσεις;

Ναι. Ονομασμένες ομάδες όπως (?<level>ERROR|WARN) εμφανίζονται στις λεπτομέρειες αντιστοιχίας και μπορούν να επαναχρησιμοποιηθούν στο κείμενο αντικατάστασης ως $<level>.

Ποια είναι η διαφορά μεταξύ Αντιγραφής JSON αντιστοιχιών και Αντιγραφής αντικατάστασης;

Η 'Αντιγραφή JSON αντιστοιχιών' αντιγράφει τα εύρη αντιστοιχιών και τις ομάδες ως JSON. Η 'Αντιγραφή αντικατάστασης' αντιγράφει το κείμενο που παράγεται από την προεπισκόπηση αντικατάστασης.

Μπορεί αυτό να ανιχνεύσει επικίνδυνα πρότυπα backtracking;

Μόνο μερικώς. Το εργαλείο αποκλείει μερικά προφανή πρότυπα με εμφωλευμένους πολλαπλασιαστές και θέτει όρια στο μέγεθος εισόδου, αλλά δεν είναι πλήρες εργαλείο ανάλυσης ReDoS.