Μικρή εισαγωγή στα regular expressions

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Μικρή εισαγωγή στα regular expressions

Δημοσίευση από cpulse » 20 Νοέμ 2006 17:12

- ΜΠΟΡΕΙ ΝΑ ΦΑΙΝΕΤΑΙ ΔΥΣΚΟΛΟ ΑΛΛΑ ΣΤΟ ΤΕΛΟΣ ΓΙΝΕΤΑΙ ΜΑΝΙΑ -

Με τα regular expressions μπορούμε να αναγνωρίζουμε ακολουθίες χαρακτήρων. Η ανθρώπινη νοημοσύνη μας δίνει την δυνατότητα να καταλαβαίνουμε ενότητες γραμμάτων και αριθμών. Για έναν υπολογιστή όμως αυτό είναι πολύ δύσκολο γιατί στην δικιά του αντίληψη όλα είναι bits και bytes.

Τα regular expressions λειτουργούνε σαν τα φίλτρα των file managers. Σε έναν file manager γράφουμε για παράδειγμα *.php για να βρούμε όλα τα αρχεία που τελειώνουν σε .php . Τα regular expressions είναι μια πολύ προχωρημένη έκδοση τέτοιων φίλτρων.

Στα regular expressions της γλώσσας Perl (στην οποία βασίζεται και η PHP) χρησιμοποιούμε χαρακτήρες για να δηλώσουμε την αρχή και το τέλος ενός μοτίβου (pattern). Μας βολεύει να χρησιμοποιήσουμε έναν χαρακτήρα που δεν επαναλαμβάνεται από το pattern μας. Συνήθως χρησιμοποιείται το slash.

Παράδειγμα 1: Βρες το "abc" οπουδήποτε σε ένα string

Κώδικας: Επιλογή όλων

/abc/

Τα regular expressions χρησιμοποιούν κάποιους χαρακτήρες ως σύμβολα. Κάποιοι από αυτούς τους χαρακτήρες είναι τα ^ $ . * ? + { } [ ] ( )
Όταν θέλουμε να χρησιμοποιήσουμε έναν χαρακτήρα, για να αποφύγουμε τον συμβολισμό τα γράφουμε μετά από ένα back slash.


Σύμβολο: ^
Το ^ στην αρχή του pattern συμβολίζει ένα string που ξεκινάει με το pattern μας.

Παράδειγμα 2: Βρες το "abc" στην αρχή του string

Κώδικας: Επιλογή όλων

/^abc/

Σύμβολο: $
Το $ στο τέλος του pattern συμβολίζει ένα string που κλείνει με το pattern μας.

Παράδειγμα 3: Βρες το "abc" στο τέλος του string

Κώδικας: Επιλογή όλων

/abc$/

Σύμβολο: .
Η τελεία συμβολίζει έναν οποιοδήποτε χαρακτήρα.

Παράδειγμα 4: Βρες το "ab", μετά έναν χαρακτήρα και μετά το "c"

Κώδικας: Επιλογή όλων

/ab.c/

Σύμβολο: *
Ο αστερίσκος συμβολίζει ένα pattern που επαναλαμβάνεται απο 0 έως άπειρες φορές.

Παράδειγμα 5: Βρες το "a", μετά κανένα ή όσα "b" θέλεις και μετά το "c"

Κώδικας: Επιλογή όλων

/ab*c/

Σύμβολο: ?
Ο λατινικό ερωτηματικό συμβολίζει ένα pattern που επαναλαμβάνεται απο 0 έως μία φορές.

Παράδειγμα 6: Βρες το "a", μετά κανένα ή ένα "b" και μετά το "c"

Κώδικας: Επιλογή όλων

/ab?c/

Σύμβολο: +
Ο συν συμβολίζει ένα pattern που επαναλαμβάνεται απο μία έως άπειρες φορές.

Παράδειγμα 7: Βρες το "a", μετά ένα ή περισσότερα "b" και μετά το "c"

Κώδικας: Επιλογή όλων

/ab+c/

Σύμβολα: { }
Τα άγκιστρα ανοίγουν μία παρένθεση για να βάλουμε ένα εύρος επανάληψης.

Παράδειγμα 8: Βρες το "a", μετά από 2 έως 7 φορές το "b" και μετά το "c"

Κώδικας: Επιλογή όλων

/ab{2,7}c/
Το εύρος μπορεί να είναι ανοιχτό, για παράδειγμα {2,} σημαίνει από 2 έως άπειρο. Τα ποιο πάνω σύμβολα * ? + μπορεί να γραφτούν και σαν {0,} {0,1} {1,} αντίστοιχα.


Σύμβολα: [ ]
Οι αγκύλες δηλώνουν μία ομάδα χαρακτήρων.

Παράδειγμα 9: Βρες το "a", μετά έναν από τους χαρακτήρες "d", "e", "f" και μετά το "c"

Κώδικας: Επιλογή όλων

/a[def]c/
Για ευκολία μπορούμε να χρησιμοποιούμε την παύλα για να ορίζουμε ομάδες αριθμών ή γραμμάτων. Για παράδειγμα το [a-z] είναι το ίδιο με το να γράψουμε όλα τα μικρά γράμματα του λατινικού αλφαβήτου. Επίσης μπορούμε να κάνουμε συνδυασμούς: [a-zA-Z0-9]. Αυτό όμως σημαίνει οτι η παύλα έχει ιδιαίτερη σημασία μέσα σε αγκύλες. Γι αυτό αν θέλουμε στην ομάδα να συμπεριλάβουμε και την παύλα πρέπει να την βάλουμε είτε στην αρχή είτε στο τέλος: [a-zA-Z0-9-]

Επίσης μέσα στις αγκύλες μπορούμε να πούμε ποιους χαρακτήρες ΔΕΝ θέλουμε. Αυτό το καταφέρνουμε αν για πρώτο χαρακτήρα βάλουμε το ^.

Παράδειγμα 10: Βρες το "a", μετά έναν χαρακτήρα που να μην είναι ο "d", "e", "f" και μετά το "c"

Κώδικας: Επιλογή όλων

/a[^def]c/

Σύμβολα: ( )
Οι παρενθέσεις ομαδοποιούν αποτελέσματα που θέλουμε να χρησιμοποιήσουμε. Επίσης ανάλογα με την PHP εντολή μπορούμε να ελέγχουμε το περιεχόμενο ενός pattern.

Παράδειγμα 11: Βρες το "a" μετά κανένα ή όσα "ps" θες και μετά ένα "c"

Κώδικας: Επιλογή όλων

/a(ps)*c/

Όμως τι γίνεται αν θέλουμε να χρησιμοποιήσουμε έναν από αυτούς τους ειδικούς χαρακτήρες; Απλά βάζουμε ένα back slash πριν τους γράψουμε.

Παράδειγμα 12: Βρες το "ab*c[123]z"

Κώδικας: Επιλογή όλων

/ab\*c\[123\]z/

Υπάρχουν κι άλλοι ειδικοί χαρακτήρες τους οποίους μπορείτε να βρείτε στο PHP Manual αν ψάξετε για "Pattern syntax". Για παράδειγμα το \w συμβολίζει οποιονδήποτε χαρακτήρα γράμμα και το \W οποιονδήποτε μη γράμμα.


Τέλος, υπάρχουν χαρακτήρες που ελέγχουν τον τρόπο χρήσης του pattern από την PHP και μπαίνουν στο τέλος του pattern. Αυτούς τους ονομάζουμε pattern modifiers. Ο πιο χρήσιμος είναι ο i και συμβολίζει οτι το pattern μας δεν είναι case sensitive.

Παράδειγμα 13: Βρες το "abc" είτε είναι γραμμένο με μικρά είτε με κεφαλαία γράμματα

Κώδικας: Επιλογή όλων

/abc/i

Μπορείτε να κάνετε άπειρους συνδυασμούς με αυτά τα σύμβολα. Αξίζει να τα μάθετε γιατί χρησιμεύουν πολύ σε δύσκολες στιγμές.

Παράδειγμα 14: Βρες ένα email.

Κώδικας: Επιλογή όλων

/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$/i

Η PHP μας δίνει δύο ομάδες από functions για regular expressions. Τις ereg* και τις preg*. Από αυτές τις δύο στα manual αναφέρεται οτι οι preg* πρέπει να προτιμούνται γιατί είναι ποιο γρήγορες.

Διαβάστε το
http://gr.php.net/manual/en/ref.pcre.php
για περισσότερα για τις αναλύσεις των functions με τα οποία μπορείτε να βρίσκετε ένα ή πολλαπλά ευρήματα από patterns, να κάνετε αλλαγές (replacements) στα strings σας, ή να σπάτε (split) ένα string σε κομμάτια.
Τελευταία επεξεργασία από το μέλος cpulse την 21 Νοέμ 2006 10:34, έχει επεξεργασθεί 1 φορά συνολικά.

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Μικρή εισαγωγή στα regular expressions

Δημοσίευση από panosru » 20 Νοέμ 2006 17:18

poly kalo cpulse egine bohthima :clap:

kai paratheto ksana kai edo ta links pou eixa se allo topic gia na einai ola mazemena.


Reqular Expressions
  1. regular-expressions.info
  2. phpfreaks.com
  3. php.net
  4. wikipedia
  5. P D F ' S ! ! !
PS: tha prostheto kai alla kata kairous. oti kalo brhsko tha to kano add.

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Μικρή εισαγωγή στα regular expressions

Δημοσίευση από panosru » 20 Νοέμ 2006 17:26

Episeis na grapso kati isos gia arketos sathriko, to reqular expression pou ekfrazei sosta ena email me bash ta standards tou RFC 822.

Episeis na anafero oti to na xrhshmopoieite to parakato reqular expression sta application sas den synistate, to parakato apla to dixno gia na deite oti me ta reqular expressions yparxei panta mia eksisoropish olon ton paragonton metaksy tou pos einai akribos kai ti einai praktiko.

Κώδικας: Επιλογή όλων

&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#40;?&#58;&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*|&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;*\<&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;@&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#40;?&#58;,@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#41;*&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;?&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*\>&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;|&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;*&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#40;?&#58;&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*|&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;*\<&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;@&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#40;?&#58;,@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#41;*&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;?&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*\>&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;,\s*&#40;?&#58;&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*|&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;*\<&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;@&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#40;?&#58;,@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#41;*&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;?&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|"&#40;?&#58;&#91;^\"\r\\&#93;|\\.|&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;&#41;*"&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*@&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#40;?&#58;\.&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#40;?&#58;&#91;^&#40;&#41;<>@,;&#58;\\".\&#91;\&#93; \x00-\x1F&#93;+&#40;?&#58;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;+|\Z|&#40;?=&#91;\&#91;"&#40;&#41;<>@,;&#58;\\".\&#91;\&#93;&#93;&#41;&#41;|\&#91;&#40;&#91;^\&#91;\&#93;\r\\&#93;|\\.&#41;*\&#93;&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*\>&#40;?&#58;&#40;?&#58;\r\n&#41;?&#91; \t&#93;&#41;*&#41;&#41;*&#41;?;\s*&#41;

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

Μικρή εισαγωγή στα regular expressions

Δημοσίευση από zeppos » 21 Νοέμ 2006 08:37

Συγχαρητήρια cpulse!!! Πολύ χρήσιμο να είναι εύκαιρο στα Ελληνικά για μας τους φρέσκους στην PHP..
Εικόνα

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Μικρή εισαγωγή στα regular expressions

Δημοσίευση από cpulse » 21 Νοέμ 2006 10:36

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

Άβαταρ μέλους
_Invisible_
Δημοσιεύσεις: 418
Εγγραφή: 16 Νοέμ 2006 16:47
Τοποθεσία: Greece

Μικρή εισαγωγή στα regular expressions

Δημοσίευση από _Invisible_ » 22 Νοέμ 2006 16:32

ΕΥΧΑΡΙΣΤΩ ΠΟΛΥ!!! ΑΚΡΙΒΩΣ ΟΤΙ ΧΡΕΙΑΖΟΜΟΥΝ!!!

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 3 επισκέπτες