derasto Δημοσ. 25 Οκτωβρίου 2011 Δημοσ. 25 Οκτωβρίου 2011 Οπως και ο τιτλοs παιζω με την παραπανω function. Εχω κολησει σε ενα σημειο. Για παραδειγμα. Εστω ενας χρηστης ξεχασει να κλεισει ενα code tag(ex ) Αυτο που θελω ειναι να αντικατασταθει το [code] και ολo το μυνημα δεξια του code tag. Any idea?
zuratharamon Δημοσ. 26 Οκτωβρίου 2011 Δημοσ. 26 Οκτωβρίου 2011 Θα πρέπει να παίξεις με RegEx http://regexr.com?2v18i Δες αυτό που σου ετοίμασα
derasto Δημοσ. 26 Οκτωβρίου 2011 Μέλος Δημοσ. 26 Οκτωβρίου 2011 Ευχαριστω φιλε μου.Αλλα για να πω την στραβη αληθεια δεν καταλαβα χριστο. Μπορεις να το αναλυσεις λιγο; --------------------- Νομιζω πως εκανα ενα βημα. >$string = $announcement['message']; $pattern = '[code]'; $replacement = 'Replaced'; $announcement['message'] = preg_replace($pattern, $replacement, $string); τωρα εχω αλλο προβλημα.Μου κανει replace μονο οτι υπαρχει μεσα στα [].δοκιμασα να γραψω τα [] με ascii δηλ. αλλα βγαζει errors Warning [2] preg_replace() [function.preg-replace]: Unknown modifier '#' - Line: 549
zuratharamon Δημοσ. 26 Οκτωβρίου 2011 Δημοσ. 26 Οκτωβρίου 2011 >\[[^\\]+?\] >\[ Ψάξε για [ >[^\\] το οποίο να μην ακολουθείται από \ >+? και πάρε το string >\] μέχρι να συναντήσεις ] Αν διαβάσεις λίγο regex θα δείς πως μπορείς να κάνεις groups ώστε να πιάσεις τι βρίσκετε μέσα στα [ ] και να το προσθέσεις στο τέλος. Δεν είναι εύκολα τα regex αλλά είναι ΠΟΛΥ δυνατά για τέτοιες δουλειές Ρίξε μια ματιά εδώ http://stackoverflow...tag-in-a-string Κάνει ακριβώς τη δουλειά που θές αλλά σε HTML tags Καλό διάβασμα
derasto Δημοσ. 26 Οκτωβρίου 2011 Μέλος Δημοσ. 26 Οκτωβρίου 2011 Thanks για το tip. Κατι αλλο.Γιατι σε αυτο το regex \[c0de]([A-Za-z0-9]+)\[/code] χτυπαει ο κωδικας; Warning [2] preg_replace() [function.preg-replace]: Delimiter must not be alphanumeric or backslash
spartakoscs Δημοσ. 26 Οκτωβρίου 2011 Δημοσ. 26 Οκτωβρίου 2011 Ένα ωραίο site που έχω βρει για να με βοηθάει να στήνω τα pattern είναι το http://gskinner.com/RegExr/ ! Απλά το μοιράζομε …. μπορεί να φανεί χρήσιμο σε κάποιον !!
thanocaster Δημοσ. 26 Οκτωβρίου 2011 Δημοσ. 26 Οκτωβρίου 2011 Thanks για το tip. Κατι αλλο.Γιατι σε αυτο το regex \[c0de]([A-Za-z0-9]+)\[/code] χτυπαει ο κωδικας; Warning [2] preg_replace() [function.preg-replace]: Delimiter must not be alphanumeric or backslash > \[c0de]([A-Za-z0-9]+)\[\/code] Καί το '/' πρέπει να γίνει escaped με '\'.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα