Η μέθοδος findall της μονάδας re
Η μέθοδος findall της μονάδας re
επιστρέφει μια λίστα με όλα τα ταιριάσματα με κανονική έκφραση.
Εάν οι κανονικές εκφράσεις τοποθετηθούν σε ομάδες, τότε η μέθοδος
θα επιστρέψει πλειάδα. Στην πρώτη παράμετρο της μεθόδου
ορίζουμε την κανονική έκφραση που θα αναζητήσουμε,
στη δεύτερη παράμετρο - τη συμβολοσειρά για αναζήτηση.
Στην τρίτη προαιρετική παράμετρο μπορούμε
να ορίσουμε σημαίες
για πρόσθετες ρυθμίσεις της κανονικής έκφρασης.
Η μέθοδος ελέγχει όλα τα ταιριάσματα, αναζητώντας τα
από αριστερά προς τα δεξιά.
Σύνταξη
import re
re.findall(κανονική_έκφραση, συμβολοσειρά, [σημαίες])
Παράδειγμα
Ας βρούμε όλα τα ταιριάσματα με κανονική έκφραση στη συμβολοσειρά:
txt = '12 43 56 ab'
res = re.findall('\d+', txt)
print(res)
Αποτέλεσμα εκτέλεσης κώδικα:
['12', '43', '56']
Παράδειγμα
Και τώρα ας βρούμε όλα τα ταιριάσματα στις ομάδες της κανονικής έκφρασης:
txt = '12 43 56 ab'
res = re.findall('(\d)(\d)', txt)
print(res)
Αποτέλεσμα εκτέλεσης κώδικα:
[('1', '2'), ('4', '3'), ('5', '6')]
Δείτε επίσης
-
μέθοδος
finditerτης μονάδαςre,
που επιστρέφει επαναλήπτη όλων των ταιριασμάτων με κανονική έκφραση σε συμβολοσειρά -
μέθοδος
searchτης μονάδαςre,
που αναζητά το πρώτο ταίριασμα με κανονική έκφραση σε συμβολοσειρά -
μέθοδος
matchτης μονάδαςre,
που αναζητά ταίριασμα με κανονική έκφραση στην αρχή της συμβολοσειράς -
μέθοδος
fullmatchτης μονάδαςre,
που αναζητά όλα τα ταιριάσματα με κανονική έκφραση σε συμβολοσειρά -
μέθοδος
splitτης μονάδαςre,
που διαχωρίζει συμβολοσειρά σε λίστα σύμφωνα με τον καθορισμένο διαχωριστή