Προς το περιεχόμενο

Regular Expression μεσα σε [ ]


**G**

Προτεινόμενες αναρτήσεις

Δημοσ.

Γεια σε όλους!

Θέλω να κάνω match σε ένα regular expression ολα τα whitespaces που περιέχονται μέσα σε bbcode έτσι ώστε όταν ο χρήστης δώσει καταλάθος κενό σε οποιοδήποτε μέρος να το αφαιρεί. πχ το να γίνεται . Προσπάθησα μ'ένα πολυ μπακαλίστικο ίσα ίσα να με βολέψει για την ώρα.

 

>(((?<=\[)|(?<=\[url)|(?<=\[img)|(?<=\[|(?<=\[i)|(?<=\[u)|(?<=\[code)|(?<=\[size)|(?<=\[color))\s+)|((?<==)\s+)|(\s+(?=\]))

 

Γνωρίζει κανείς τίποτα? Εμένα έλιωσε το κεφάλι μου τέρμα. O.o

Δημοσ.

Ναι, αρκεί να μπορεί να διαβάσει τις ετικέτες σε περίπτωση που είναι κάπως έτσι [ url = kati ]. Έφτιαξα ένα regular expression που εντοπίζει τα valid bbcode tags ( πχ κάνει match):

>\[([A-Z][A-Z0-9]*)\b[^>]*\](.*?)\[/\1\]

. Φυσικά δεν εντοπίζει τα κενά, όμως κάνει validate τον bb κώδικα οπότε δε θα σπαταλήσει extra χρόνο o server για bbcodes με λάθος σύνταξη. Απλα θα τα φτύνει στη database ακριβώς όπως είναι γραμμένα χωρίς parse

 

edit: Οπότε δε θα χρειάζεται να κοιτάει τα κενά καθόλου. Μόνο ο valid κώδικας θα γίνεται parse, το οποίο σημαίνει οτι δεν θα καταφέρω να κάνω αυτό που θέλω xD. Όμως και χωρίς το bbcode validation το parse θα είναι άθλιο. Θα κάνει parse ακόμα και τα άκυρα brackets που δεν έχουν σχέση με bbcode, το οποίο είναι λίγο αστείο. ταχύτητα, συμβατότητα ή ευκολία στο χρήστη? ^^

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...