Η μέθοδος search στις κανονικές εκφράσεις της Python
Στα προηγούμενα μαθήματα μελετήσαμε τις κανονικές εκφράσεις χρησιμοποιώντας μια μέθοδο για εύρεση και αντικατάσταση. Υπάρχουν και άλλες μέθοδοι. Σε αυτό το μάθημα θα αρχίσουμε να τις μελετάμε.
Η νέα μέθοδος που θα μελετήσουμε ονομάζεται
search. Αναζητά την πρώτη αντιστοιχία
με την κανονική έκφραση σε μια συμβολοσειρά.
Στην πρώτη παράμετρο
της μεθόδου πρέπει να ορίσετε την κανονική έκφραση,
που θα αναζητήσουμε, στη δεύτερη παράμετρο - τη συμβολοσειρά,
στην οποία θα την αναζητήσουμε. Η μέθοδος ελέγχει για αντιστοιχίες,
περνώντας τη συμβολοσειρά από αριστερά προς τα δεξιά.
Ως αποτέλεσμα, η μέθοδος επιστρέφει ένα ειδικό αντικείμενο match, που περιέχει πληροφορίες σχετικά με τη substring που βρέθηκε και τη θέση της στην αρχική συμβολοσειρά.
Ας δοκιμάσουμε στην πράξη. Ας βρούμε
την πρώτη substring με ψηφία χρησιμοποιώντας τη μέθοδο
search:
txt = 'aaa 123 bbb 456'
res = re.search('\d+', txt)
Ας βρούμε την πρώτη substring με ψηφία
χρησιμοποιώντας τη μέθοδο search:
print(res) # εδώ θα είναι ένα αντικείμενο match
Και τώρα ας εκτυπώσουμε το κείμενο που βρέθηκε. Θα βρίσκεται στο μηδενικό στοιχείο του αντικειμένου match:
print(res[0]) # θα εκτυπώσει '123'
Δίνεται η συμβολοσειρά:
txt = '123 abc 456 cde'
Βρείτε την πρώτη substring, που περιέχει μόνο αλφαβητικούς χαρακτήρες. Εκτυπώστε την στην κονσόλα.
Δίνεται η συμβολοσειρά:
txt = '1 23 456 789'
Βρείτε τη θέση του πρώτου αριθμού, που αποτελείται από τρία ψηφία.