Regex στην εύρεση και αντικατάσταση: ήπιος οδηγός με επτά συνταγές
Μια κανονική έκφραση, ή regex, είναι ένα μοτίβο γραμμένο με λίγα σύμβολα. Στο εργαλείο «Εύρεση και αντικατάσταση», ενεργοποιήστε το Regex και το πεδίο Εύρεση διαβάζει μοτίβο αντί για απλό κείμενο, οπότε μια τελεία σημαίνει οποιονδήποτε χαρακτήρα και όχι απλώς τελεία. Τα περισσότερα χρήσιμα μοτίβα χρειάζονται μόνο μια χούφτα σύμβολα. Απενεργοποιήστε ξανά το Regex για απλές λέξεις, επειδή τότε κάθε σύμβολο είναι κυριολεκτικό.
Εύρεση και αντικατάστασηΑλλαγή λέξης σε όλο το κείμενοΚάντε το δωρεάνΤα σύμβολα που χρειάζεστε
| Σύμβολο | Αντιστοιχεί σε |
|---|---|
| . | οποιονδήποτε χαρακτήρα εκτός από αλλαγή γραμμής |
| * | το προηγούμενο στοιχείο, μηδέν ή περισσότερες φορές |
| + | το προηγούμενο στοιχείο, μία ή περισσότερες φορές |
| ? | το προηγούμενο στοιχείο, μία φορά ή καμία |
| [ ] | έναν χαρακτήρα από τη λίστα, όπως [aeiou] ή [0-9] |
| \d \w \s | ψηφίο· γράμμα, ψηφίο ή κάτω παύλα· κενό, tab ή αλλαγή γραμμής |
| ( ) | ομάδα, την οποία η Αντικατάσταση μπορεί να ξαναχρησιμοποιήσει ως $1, $2 κ.ο.κ. |
| ^ και $ | την αρχή και το τέλος ολόκληρου του κειμένου |
Τα κεφαλαία γράμματα αντιστρέφουν μια κατηγορία: το \D είναι οποιοσδήποτε χαρακτήρας που δεν είναι ψηφίο και το \S οποιοσδήποτε που δεν είναι κενό.
Δύο σημειώσεις ισχύουν για αυτό το εργαλείο. Πρώτον, το \w αντιστοιχεί μόνο σε λατινικά γράμματα, ψηφία και την κάτω παύλα. Για τονούμενα γράμματα, χρησιμοποιήστε το \p{L}, που αντιστοιχεί σε γράμμα οποιουδήποτε αλφαβήτου. Δεύτερον, τα ^ και $ αντιστοιχούν στην αρχή και το τέλος ολόκληρου του κειμένου και όχι κάθε γραμμής. Οι συνταγές παρακάτω χρησιμοποιούν αντί γι' αυτό αλλαγή γραμμής μέσα στο μοτίβο.
Ομάδες και $1
Βάλτε ένα μέρος του μοτίβου σε παρένθεση και το εργαλείο θυμάται τι αντιστοίχισε αυτό το μέρος. Στην Αντικατάσταση, το $1 είναι η πρώτη ομάδα, το $2 η δεύτερη, και το $& ολόκληρη η αντιστοίχιση. Οι συχνές ερωτήσεις του ίδιου του εργαλείου δίνουν ένα κλασικό παράδειγμα: με Εύρεση (\w+)@(\w+) και Αντικατάσταση $2 at $1, το κείμενο name@site γίνεται site at name. Οι ομάδες λειτουργούν μόνο με το Regex ενεργό. Όταν είναι απενεργοποιημένο, το $1 πληκτρολογείται όπως είναι.
Φτιάξτε μοτίβο βήμα βήμα
Ξεκινήστε με το ακριβές κείμενο που θέλετε να βρείτε και μετά αντικαταστήστε με σύμβολα τα μέρη που αλλάζουν. Μια ημερομηνία όπως η 2026-11-04 μπορεί να γραφτεί ως \d{4}-\d{2}-\d{2}, όπου το {4} σημαίνει ακριβώς τέσσερις φορές το προηγούμενο στοιχείο. Δοκιμάστε πρώτα την απλή εκδοχή και σφίξτε τη μόνο όταν οι επισημάνσεις δείχνουν ότι πιάνει πολλά.
Αν θέλετε να δείτε τι κάνει ένα μοτίβο μόνο του, χωρίς να αλλάξετε τίποτα, το δοκιμαστής regex το εφαρμόζει σε ένα δείγμα κειμένου και καταγράφει κάθε αντιστοίχιση.
Επτά συνταγές
Ενεργοποιήστε το Regex για κάθε συνταγή. Το εργαλείο επισημαίνει τις αντιστοιχίσεις και δείχνει το πλήθος τους πριν αντιγράψετε, γι' αυτό δοκιμάστε πρώτα κάθε συνταγή σε αντίγραφο του κειμένου σας.
- Ανταλλαγή ονόματος και επωνύμου. Εύρεση
(\w+) (\w+), Αντικατάσταση$2, $1. Το «Ada Lovelace» γίνεται «Lovelace, Ada». Για ονόματα με τόνους, χρησιμοποιήστε(\p{L}+) (\p{L}+). Αυτό καλύπτει μόνο ονόματα δύο λέξεων. - Αφαίρεση κενών στο τέλος. Εύρεση
[ \t]+(?=\r?\n|$), αφήστε το πεδίο Αντικατάσταση κενό. Αντιστοιχεί σε κενά ή tab που βρίσκονται ακριβώς πριν από αλλαγή γραμμής ή το τέλος του κειμένου. Το lookahead(?=...)ελέγχει για την αλλαγή γραμμής χωρίς να την αφαιρεί, και το\r?καλύπτει τις αλλαγές γραμμής των Windows. Η Διόρθωση επικολλημένου κειμένου έχει επιλογή «Περικοπή κάθε γραμμής» που κάνει την ίδια δουλειά. - Συμπύκνωση διπλών κενών. Εύρεση
{2,}, δηλαδή ένα κενό που επαναλαμβάνεται δύο ή περισσότερες φορές, και Αντικατάσταση ένα κενό. Δύο ή περισσότερα κενά γίνονται ένα. Μικραίνει επίσης τις εσοχές, γι' αυτό παραλείψτε το για κώδικα. - Πρόθεμα σε κάθε γραμμή. Εύρεση
(.+), Αντικατάσταση- $1. Κάθε σειρά από έναν ή περισσότερους χαρακτήρες ανάμεσα σε αλλαγές γραμμής είναι μια γραμμή, και το $1 την κρατά. Οι κενές γραμμές παραλείπονται. Χρησιμοποιήστε τη μορφή με έναν ή περισσότερους,.+, και όχι τη μορφή με μηδέν ή περισσότερους, επειδή η μορφή με μηδέν ή περισσότερους αντιστοιχεί και στα κενά σημεία ανάμεσα στις αλλαγές γραμμής, οπότε οι κενές γραμμές αποκτούν μια αδέσποτη παύλα. - Διαγραφή κενών γραμμών. Εύρεση
\n\s*(?=\n), αφήστε κενό το πεδίο Αντικατάσταση. Η αντιστοίχιση είναι μια αλλαγή γραμμής και κάθε κενό διάστημα που ακολουθεί, έως την επόμενη αλλαγή γραμμής, και αυτή η επόμενη αλλαγή διατηρείται. Αφαιρεί κενές γραμμές, συμπεριλαμβανομένων εκείνων που περιέχουν μόνο κενά. Επειδή το\sαντιστοιχεί και σε χαρακτήρες επιστροφής φορέα, λειτουργούν και οι αλλαγές γραμμής των Windows. Μια κενή γραμμή στην κορυφή του κειμένου μένει. Το εργαλείο Αφαίρεση διπλότυπων γραμμών έχει επιλογή «Απόρριψη κενών γραμμών» που κάνει την ίδια δουλειά με ένα κλικ. - Ένα στοιχείο ανά γραμμή. Εύρεση
,[ ]*, Αντικατάσταση\n, και τσεκάρετε το «Διάβασε το \n και το \t στην Αντικατάσταση». Το «apples, pears, plums» γίνεται τρεις γραμμές. Χωρίς το τσεκάρισμα, το \n μένει ως δύο χαρακτήρες: η ανάστροφη κάθετος και το n. - Περικλεισμός κάθε αριθμού σε αγκύλες. Εύρεση
\d+, Αντικατάσταση[$&]. Το «Order 42 and 7» γίνεται «Order [42] and [7]». Το $& είναι ολόκληρη η αντιστοίχιση, οπότε δεν χρειάζεται ομάδα.
Ελέγξτε πριν αντιγράψετε
- Το πλήθος αντιστοιχίσεων και οι επισημάνσεις δείχνουν τι πιάνει το μοτίβο. Αν οι επισημάνσεις είναι λάθος, λάθος θα είναι και το αποτέλεσμα.
- Ένα μοτίβο με λάθος εμφανίζει το μήνυμα «Μη έγκυρο μοτίβο» κάτω από τα πεδία. Διορθώστε το μοτίβο και το αποτέλεσμα ενημερώνεται.
- Αφήστε κενό το πεδίο Αντικατάσταση για να διαγράψετε κάθε αντιστοίχιση. Το υπόδειγμα του πεδίου το αναφέρει.
- Η «Αντιστοίχιση πεζών/κεφαλαίων» είναι απενεργοποιημένη από προεπιλογή, οπότε οι συνταγές αντιστοιχίζουν κεφαλαία και πεζά το ίδιο. Ενεργοποιήστε την όταν έχει σημασία η γραφή.
- Για να βρείτε μια κυριολεκτική τελεία ή αγκύλη με το Regex ενεργό, βάλτε μπροστά μια ανάστροφη κάθετο: \. ή \[.
Ειδικές περιπτώσεις
- Άπληστες αντιστοιχίσεις. Το
.+παίρνει όσα μπορεί. Για να σταματήσει στην πρώτη αντιστοίχιση, προσθέστε το σύμβολο ?:.+?. Αυτό έχει σημασία για κείμενο όπως το<b>.+</b>, που μπορεί να εκτείνεται σε πολλές ετικέτες. - Ολόκληρες λέξεις. Για απλή λέξη, είναι ασφαλέστερο να είναι το Regex απενεργοποιημένο. Το «Μόνο ολόκληρες λέξεις» εμποδίζει το cat να αντιστοιχεί μέσα στο category, όπως εξηγούν οι συχνές ερωτήσεις του εργαλείου. Ο οδηγός εύρεσης και αντικατάστασης έχει περισσότερα παραδείγματα αλλαγών ολόκληρων λέξεων.
- Κρατήστε το πρωτότυπο. Το αποτέλεσμα εμφανίζεται σε δικό του πλαίσιο και το κείμενο εισόδου μένει ως είχε. Αντιγράψτε το αποτέλεσμα όταν είστε ικανοποιημένοι.
Μετάφραση από το Αγγλικό πρωτότυπο με τη βοήθεια τεχνητής νοημοσύνης.
Σχόλια
Δεν υπάρχουν σχόλια ακόμη. Γίνετε οι πρώτοι.


