Χωρίς μεταφόρτωση, 100% τοπικά, χωρίς λογαριασμό

Δοκιμαστής Regex

Εισαγάγετε ένα μοτίβο, επιλέξτε σημαίες, και δοκιμάστε στο κείμενό σας. Οι αντιστοιχίσεις επισημαίνονται ενσωματωμένα. Οι ομάδες λήψης παρατίθενται ανά αντιστοιχία. Τίποτα δεν εγκαταλείπει το πρόγραμμα περιήγησής σας.

Πώς λειτουργεί το Δοκιμαστής Regex

Το εργαλείο δοκιμής regex σας επιτρέπει να γράψετε μια κανονική έκφραση JavaScript, να επικολλήσετε δείγμα κειμένου και να δείτε κάθε αντιστοιχία επισημασμένη σε πραγματικό χρόνο. Οι ομάδες σύλληψης εμφανίζονται σε πίνακα κάτω από το κείμενο, ώστε να μπορείτε να εξετάσετε τι περιέχει κάθε ομάδα χωρίς να τρέξετε κώδικα. Οι υποστηριζόμενες σημαίες είναι g (global), i (case-insensitive), m (multiline), s (dotAll), u (Unicode) και y (sticky). Τίποτα που πληκτρολογείτε δεν φεύγει από τη συσκευή σας: η μηχανή αντιστοίχισης είναι το JavaScript runtime που είναι ενσωματωμένο στην καρτέλα του περιηγητή σας, όχι ένας διακομιστής.

Στο παρασκήνιο, το εργαλείο καλεί τον τυπικό κατασκευαστή ECMAScript RegExp με το μοτίβο και τις σημαίες που δίνετε, και στη συνέχεια χρησιμοποιεί τον επαναλήπτη matchAll για να συλλέξει όλα τα αντικείμενα Match. Ο πίνακας ομάδων δομείται απευθείας από αυτά τα αντικείμενα, οπότε αυτό που βλέπετε είναι ακριβώς αυτό που θα επέστρεφε το Node.js ή ένας περιηγητής σε κώδικα παραγωγής, χωρίς ενδιάμεσο στρώμα μετάφρασης.

Δοκιμαστής Regex: οδηγός βήμα προς βήμα

  1. Πληκτρολογήστε ή επικολλήστε την κανονική έκφρασή σας στο πεδίο μοτίβου.
  2. Ενεργοποιήστε τις σημαίες που χρειάζεστε (g, i, m, s, u, y) μέσω των πλαισίων ελέγχου.
  3. Επικολλήστε το κείμενο που θέλετε να δοκιμάσετε στην περιοχή δείγματος.
  4. Εξετάστε τις επισημασμένες αντιστοιχίες στο κείμενο και τον πίνακα ομάδων σύλληψης από κάτω.
  5. Προσαρμόστε το μοτίβο και παρακολουθήστε τα αποτελέσματα να ενημερώνονται ζωντανά.

Συνήθεις περιπτώσεις χρήσης

  • Επαληθεύστε ότι ένα μοτίβο εξαγωγής email χειρίζεται σωστά οριακές περιπτώσεις όπως το plus-addressing πριν το προσθέσετε σε αγωγό δεδομένων.
  • Διορθώστε σφάλματα σε μια ονομαστική ομάδα σύλληψης για ανάλυση γραμμών καταγραφής, ελέγχοντας κάθε τιμή ομάδας έναντι πραγματικού δείγματος.
  • Επιβεβαιώστε ότι ένα regex αντιστοίχισης URL με τη σημαία u χειρίζεται σωστά ονόματα τομέα Unicode πριν το προσθέσετε σε δρομολογητή.
  • Δοκιμάστε διαδραστικά ένα μοτίβο αναζήτησης-και-αντικατάστασης για να βεβαιωθείτε ότι δεν έχει ακούσιες greedy αντιστοιχίες σε μεγάλο αρχείο ρυθμίσεων.

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

Αποστέλλεται κάτι που πληκτρολογώ σε διακομιστή;

Όχι. Η αντιστοίχιση εκτελείται εξ ολοκλήρου μέσα σε αυτή την καρτέλα του περιηγητή χρησιμοποιώντας τον ενσωματωμένο κινητήρα JavaScript RegExp. Το μοτίβο, οι σημαίες και το δείγμα κειμένου σας δεν μεταδίδονται πουθενά. Ανοίξτε τα DevTools και ελέγξτε την καρτέλα Network ενώ πληκτρολογείτε: δεν εξέρχεται κανένα αίτημα.

Ποια γεύση regex χρησιμοποιεί αυτό το εργαλείο;

ECMAScript (ES2022+) όπως υλοποιείται από τον περιηγητή σας. Αυτή είναι η ίδια γεύση που χρησιμοποιείται σε Node.js, Deno και σύγχρονους περιηγητές. Χαρακτηριστικά αποκλειστικά PCRE, όπως lookbehind μεταβλητού μήκους ή possessive quantifiers, δεν υποστηρίζονται, αν και τα περισσότερα κοινά μοτίβα λειτουργούν πανομοιότυπα.

Γιατί εμφανίζεται σφάλμα για μη έγκυρη κανονική έκφραση;

Ο κατασκευαστής RegExp του περιηγητή εκπέμπει SyntaxError για μοτίβα που δεν είναι έγκυρα ECMAScript regex. Συνήθεις αιτίες είναι μια ανεξαρτοποίητη ανάστροφη κάθετος, μια μη κλειστή ομάδα, ή ένα Unicode property escape (\p{...}) χωρίς τη σημαία u.

Τι εμφανίζει ο πίνακας ομάδων σύλληψης;

Για κάθε αντιστοιχία που βρίσκεται (υπό τη σημαία g), ο πίνακας εμφανίζει την πλήρη αντιστοιχία και στη συνέχεια κάθε αριθμημένη ή ονομαστική ομάδα με τη σειρά. Οι ονομαστικές ομάδες εμφανίζονται με το όνομά τους ως επικεφαλίδα στήλης. Ομάδες που δεν συμμετείχαν σε αντιστοιχία εμφανίζονται κενές.

Μπορώ να δοκιμάσω μοτίβα που χρησιμοποιούν lookbehind;

Ναι, αρκεί το lookbehind να είναι σταθερού ή μεταβλητού μήκους και να υποστηρίζεται από τον περιηγητή σας. Το Chrome και το Firefox υποστηρίζουν lookbehind μεταβλητού μήκους από το 2020. Το Safari πρόσθεσε υποστήριξη το 2022. Αν ο περιηγητής σας είναι πρόσφατος, θα λειτουργεί.

Λειτουργεί το εργαλείο αν αποσυνδεθώ κατά τη διάρκεια μιας συνεδρίας;

Ναι. Αφού φορτωθεί η σελίδα, κάθε αντιστοιχία υπολογίζεται τοπικά από τον κινητήρα JavaScript του περιηγητή σας χωρίς εξάρτηση από το δίκτυο. Η διακοπή της σύνδεσης δεν διακόπτει τη δοκιμή.