Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Python Προγραμματισμός

Πώς να αντικαταστήσει Regex για Python

Η γλώσσα προγραμματισμού Python χρησιμοποιεί συνήθεις εκφράσεις για αντιστοίχιση μοτίβο . Προγραμματιστές χρησιμοποιούν συχνά συνήθεις εκφράσεις για να αναζητήσετε κείμενο πρότυπα των γραμμάτων , τα σύμβολα και αριθμούς . Η δύναμη των κανονικών εκφράσεων προέρχεται από το γεγονός ότι δεν χρησιμοποιείται για την αναζήτηση για κάτι συγκεκριμένο, όπως τη λέξη «σκύλος» ? Αντ 'αυτού , ψάχνουν για τις λέξεις που ταιριάζουν με ένα συγκεκριμένο μοτίβο , όπως τα ονόματα τομέα ηλεκτρονικού ταχυδρομείου . Για παράδειγμα , μπορείτε να χρησιμοποιήσετε την Python για να αντικαταστήσει τα domain names του μια λίστα διευθύνσεων ηλεκτρονικού ταχυδρομείου χρησιμοποιώντας κανονικές εκφράσεις . Τα πράγματα που θα χρειαστείτε
Υπολογιστής με γλώσσα προγραμματισμού Python εγκατεστημένη
Η Εμφάνιση Περισσότερες οδηγίες
Η

1 Ανοίξτε το IDLE επεξεργαστή κειμένου που έρχεται πακέτο με τη γλώσσα Python , κάνοντας κλικ στο εικονίδιο του . Το IDLE εικονίδιο επεξεργαστή κειμένου βρίσκεται στον κατάλογο Python στην λίστα των εγκατεστημένων προγραμμάτων σας ( που βρίσκεται κάτω από όλα τα προγράμματα στο μενού Έναρξη των Windows , και μέσα στο φάκελο Applications στο OSX ) . Ένα κενό αρχείο πηγαίου κώδικα ανοίγει το κύριο παράθυρο του επεξεργαστή 2

Συμπεριλάβετε την ενότητα ' re' γράφοντας αυτή τη γραμμή στο επάνω μέρος του αρχείου πηγαίου κώδικα : .

Εκ νέου εισαγωγή

Η 3

να αναγνωρίσει μια σειρά και να ορίσετε κάποιες διευθύνσεις ηλεκτρονικού ταχυδρομείου σε αυτό , όπως αυτό :

EmailAddresses = ' William@amail.com , John@bmail.com , Bruce @ cmail.com «
Η 4

Δημιουργήστε μια κανονική έκφραση που αναζητά όλες τις πιθανές παραλλαγές κείμενο έγκυρες διευθύνσεις ηλεκτρονικού ταχυδρομείου . Κανονικές εκφράσεις λειτουργούν από την αναζήτηση για ένα σχέδιο των χαρακτήρων σε μια συμβολοσειρά κειμένου . Το σχέδιο που σας ενδιαφέρει είναι κάθε δύο λέξεις ενώνονται με ένα σύμβολο @ . Εφόσον η διεύθυνση ηλεκτρονικού ταχυδρομείου έχει πολλά έγκυρα χαρακτήρες , θέλετε να ταιριάζει με όλες τις πιθανές χαρακτήρες σε κάθε λέξη πριν και μετά το σύμβολο @ . Αυτό επιτυγχάνεται με την κανονική έκφραση [ \\ w \\ - . ] , Και με την προσθήκη ενός + στο τέλος της περιόδου, μπορείτε να επαναλάβετε αυτό για όλους τους χαρακτήρες . Το συμπληρωμένο κανονική έκφραση μπορεί να αποθηκευτεί σε μια σειρά όπως αυτό :

regexPattern = r ' ( [ . \\ W \\ - ] + ) @ ( [ . \\ W \\ - ] + ) »

5

Δημιουργήστε μια κανονική έκφραση που αντικαθιστά όλα τα domain names με " zmail.com . " Σε αυτή την κανονική έκφραση , η ακολουθία χαρακτήρων backreference \\ 1 χρησιμοποιείται για να αντικαταστήσει τον τομέα των διευθύνσεων ηλεκτρονικού ταχυδρομείου . Η backreference αναφέρεται σε μια θέση σε μια κανονική έκφραση που περιβάλλεται σε παρένθεση. Εφαρμόζοντας την κανονική έκφραση στην πρώτη backreference , μπορείτε να αποθηκεύσετε τη διεύθυνση ηλεκτρονικού ταχυδρομείου, αλλά πετάξτε το παλιό όνομα τομέα . Μπορείτε να προσθέσετε ένα νέο όνομα τομέα , όπως « @ zmail.com ». Για να αποθηκεύσετε αυτή τη δεύτερη κανονική έκφραση σε μια μεταβλητή , μπορείτε να γράψετε αυτό :

regexReplacement = r '\\ 1@zmail.com »
Η 6

Εφαρμόστε τις συνήθεις εκφράσεις στο string που περιέχει οι διευθύνσεις ηλεκτρονικού ταχυδρομείου , όπως αυτό :

EmailAddresses = re.sub ( regexPattern , regexReplacement , EmailAddresses )
Η 7

Εκτυπώστε τις διευθύνσεις ηλεκτρονικού ταχυδρομείου , χρησιμοποιώντας αυτήν τη γραμμή κώδικα . Python 3 χρησιμοποιεί την εξής σύνταξη για την εκτύπωση : print ( EmailAddresses ) , ενώ Python 2 χρησιμοποιεί την εξής σύνταξη : . EmailAddresses εκτύπωσης
8

Εκτελέστε το πρόγραμμα πατώντας το πλήκτρο F5 . Η έξοδος του προγράμματος είναι :

William@zmail.com , John@zmail.com , Bruce@zmail.com
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα