![]() |
הסתבכות עם REGEX.
טוב אז כבר ניסית הכל אבל לא הולך לי.
כעקרון מה שאני עושה זה לקבל תוכן של אתר ע"י file_get_contents ואז להוריד ממנו את ה- IFRAME ממנו ואז להדפיס , ככה שמה שיצא כשאני מדפיס אותו הוא האתר ללא ה- IFRAMES וללא התוכן שלו. אשמח אם מישהו יכול להביא לי איזה קוד שיכול לסדר את זה. מה שיצא לי עד עכשיו זה זה : PHP קוד:
אשמח לעזרה , אני מתחיל להתיאש מזה. תודה , מור. |
לא תקבל פה קוד מוכן.
נסה לחפש באינטרנט, להשתמש בביטויים לא חמדניים קוד:
.*? /// .+? |
ציטוט:
|
strip tags לא עוזר.
ניסיתי לחפש את מה שהבאת אבל זה מביא תוצאות לא רלוונטיות. אפשר אולי איזה לינק? |
ציטוט:
קוד:
<hello> i'm <omer> קוד:
<(.*)> התכונה הזו של ביטויים רגולריים נקראת חמדנות. ישנן 2 דרכים לטפל בחמדנות. האחת פשוטה למימוש גם בקטעים קיימים, אבל היא עובדת עם מודיפיקטור U - Ungreedy. אני מעדיף להשתמש בשיטה השניה: קוד:
<(.*?)> הערת אגב, אם מופעל המודיפיקטור U הפעולה שמבצע הסימן שאלה הפוכה (מחזיר לחמדנות). ציטוט:
|
בדיוק .
|
אז למה הפונקציה? הקוד שאתה בונה צריך לכלול את הביטוי הבא:
-פתיחת תג IFRAME (כלומר <iframe ) -נתונים בתוכו (SRC, FRAMEBORDER וכו') -סגירת תג IFRAME (כלומר >) -תוכן בין התג הפותח לתג הסוגר -תג סוגר (</iframe>). הביטוי פשוט יחסית. נסה לחשוב איך כותבים אותו, תשתמש בטיפ שנתתי לך על החמדנות. אגב, בסיטואציה הזאת הייתי משתמש בנקודה (.) עם המודיפיקטור s. |
חיפשתי ככה בהתחלה :
PHP קוד:
|
קוד:
~<\s*iframe(.*?)>.*?<\s*/\s*iframe>~ |
ציטוט:
קוד:
Unknown modifier '.' |
כל הזמנים הם GMT +2. הזמן כעת הוא 03:55. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ