הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   בעיה קטנה בbbcode שאני עושה (https://hosts.co.il/forums/showthread.php?t=78548)

link 25-09-09 12:48

בעיה קטנה בbbcode שאני עושה
 
אני בניתי למערכת שלי אפשרות של ציטוט(quote). כשיש quote אחד הוא מחליף את זה ללא בעיה ושם את הציטוט בתוך הטבלה שבניתי. אבל כשיש quote בתוך quote רק את הquote הראשון הוא מכניס לתוך טבלה והquote הקודם - זה שצוטט ראשון הוא לא מכניס לתוך טבלה ומשאיר כטקסט רגיל.

אשמח לדעת אם יש למישהו פתרון לבעיה זו.

אם מישהו מעוניון באיך שאני מבצע את זה, להלן הקוד:
PHP קוד:

$string preg_replace('/\[quote name=(.*) date=(.*)\](.*)\[\/quote\]/'$this->skin['main']->quote_body('$3','$2','$1'), $string); 

quote_body זוהי פונקציית הסקין.

Shay Ben Moshe 25-09-09 12:59

נסה להוסיף את המודיפקטור U, זה עושה שהביטוי לא יהיה "חמדן"..
אתה יכול לנסות את הקוד הזה (כמעט הקוד שלך):
PHP קוד:

$string preg_replace('#\[quote name=(.*) date=(.*)\](.*)\[/quote\]#U',$this->skin['main']->quote_body('$3','$2','$1'),$string); 


intercooler3819 25-09-09 14:08

תוסיף גם את המודיפיקטורים i (אי קטנה) ו- s (קטנה גם)
בנוסף לא רציני ולא חכם לתחום עם .* את כל הביטויים האלה...
תהפוך את הביטוי שלך ליותר ספציפי

link 25-09-09 14:10

ניסתי עם הu וזה לא עבד... בנוסף לכך שאני לא מבין pereg...


כל הזמנים הם GMT +2. הזמן כעת הוא 13:38.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ