REGEX
Η συνάρτηση REGEX επιτρέπει τη χρήση κανονικών παραστάσεων σε άλλες συναρτήσεις κειμένου και συναρτήσεις συνθηκών. Μπορεί να χρησιμοποιηθεί με όλες τις συναρτήσεις που παίρνουν σαν όρισμα μια συνθήκη (IF, COUNTIF, …) ή μια αντιστοιχία συμβολοσειράς (SUBSTITUTE, TEXTBEFORE, …). Όταν δεν χρησιμοποιείται ως συνθήκη ή για την αντιστοίχηση κειμένου, η συνάρτηση REGEX επιστρέφει την υποκείμενη κανονική παράσταση ως τιμή συμβολοσειράς.
REGEX(συμβολοσειρά-κανονικής-έκφρασης; διάκριση-πεζών-κεφαλαίων)
συμβολοσειρά-κανονικής-έκφρασης: Μια τιμή συμβολοσειράς που αντιπροσωπεύει μια κανονική παράσταση.
διάκριση-πεζών-κεφαλαίων: Μια προαιρετική βοηθητική τιμή που καθορίζει αν θα ισχύει ή όχι διάκριση-πεζών-κεφαλαίων για την κανονική παράσταση.
Διάκριση-πεζών-κεφαλαίων (TRUE ή καμία τιμή): Θα ισχύει διάκριση-πεζών-κεφαλαίων για την κανονική παράσταση.
Αγνόηση πεζών-κεφαλαίων (FALSE): Δεν θα ισχύει διάκριση-πεζών-κεφαλαίων για την κανονική παράσταση.
Σημειώσεις
Η συμβολοσειρά-κανονικής-έκφρασης θα πρέπει να συμμορφώνεται με το πρότυπο ICU.
Όπως μπορεί να συνενωθεί με κανονικές τιμές συμβολοσειράς, μια παράσταση REGEX μπορεί να συνενωθεί και με μια άλλη REGEX. Ωστόσο, αν μια REGEX συνενωθεί με μια κανονική συμβολοσειρά, το αποτέλεσμα είναι μια κανονική συμβολοσειρά και όχι πλέον REGEX.
Παραδείγματα |
---|
Η συνάρτηση =COUNTMATCHES("Για μέτρημα των λέξεων, χρησιμοποιήστε regex."; REGEX("\w+")) επιστρέφει αποτέλεσμα 6. Η συνάρτηση =TEXTBEFORE("Πάρε όλο το κείμενο πριν από τους πρώτους αριθμούς 12345 - και τίποτα άλλο."; REGEX("[0-9]+")) επιστρέφει «Πάρε όλο το κείμενο πριν από τους πρώτους αριθμούς ». Έστω ότι κάθε κελί στο εύρος A1:A10 περιέχει μια λέξη, 5 από τις οποίες περιέχουν το γράμμα «a». Η συνάρτηση =COUNTIF(A1:A10; REGEX("a+";FALSE)) επιστρέφει αποτέλεσμα 5. Η συνάρτηση =SUBSTITUTE("example@example.com: Marina Email", REGEX("[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}") & REGEX(": *"), "") επιστρέφει αποτέλεσμα «Marina Email». Η συνάρτηση =SUBSTITUTE("marina@example.com"; REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+)(\.[A-Za-z]{2,4})"); "$2@$1$3") επιστρέφει αποτέλεσμα «example.com@marina.com». Η συνάρτηση =COUNTMATCHES("Item1; item2; item3"; REGEX("item[0-9]")) επιστρέφει αποτέλεσμα 2. Η συνάρτηση =COUNTMATCHES("Item1; item2; item3"; REGEX("item[0-9]"; FALSE)) επιστρέφει αποτέλεσμα 3. Έστω ότι το A1 είναι «Client email: client@example.com». Η συνάρτηση =IF(COUNTMATCHES(A1; REGEX("[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2;4}")); "Έχουμε email"; "Κανένα email") επιστρέφει αποτέλεσμα «Έχουμε email». |