שלח תשובה

זירת השאלות

512
צפיות
7
תשובות

המרת טבלה בביטוי רגולרי. (PHP)

,‏ 20 בינואר, 2005

אני שובר ת'ראש כמה ימים עם זה, אז תודה מראש להתייחסות…

אני צריך להוציא מטבלת HTML (שיכולה להכיל כל תאג שהוא) רק את הנתונים המילוליים, ולהפוך אותה לטבלה ב-MySql.

בעיקר חשוב הביטוי הרגולרי שידע להחזיר מערך רב מימדי שמייצג את הטבלה לפי שורה ותא, והדרך להשתמש בה – הפונקצייה עם הפרמטרים הרלוונטים.

תגיות:

7 תשובות

  1. הנה ניסיון
    אתה עושה ככה:
    1. אתה מכניס את כל הטקסט למשתנה
    2. אתה מחליף את כל הטקסט עם ה-regExp הבא:

    /<[^>]*>/g

    ואז אתה עושה החלפה לזה —–iam_the_winner——
    אח"כ אתה עושה split למערך וואללה זה מוכן

  2. זהר פלד הגיב:

    רעיון יפה, אבל…
    א) split מייצר מערך חד מימדי.

    ב) יכולים להיות תגים בתוך הטבלה שהם לא תגים של td או tr, והם ייצרו לך תאים מיותרים….

    אני דוקא הייתי הולך על פתרון שהוא יותר לכיון ה dom, כמו oTable.childNodes, בשביל לקבל את ה collection של ה tr, ואז מתוכו את ה collections של ה td בכל שורה. כמובן שזה ניתן לביצוע רק בצד הלקוח, אז אני לא יודע אם זה מתאים כתשובה לשאלה הזו.

  3. jonatan44 הגיב:

    נחמד, אתה כתבתה?
    הייתי מפוקק את זה..

  4. yoni100 הגיב:

    באמת רעיון יפה! ותודה גם למבצע!
    אבל אני מנסה על השרת.
    בכל זאת תודה!

  5. זהר פלד הגיב:

    אממ… אז אתה יכול לפתח את הרעיון
    של "מי אמר אני" ולבצע split לפי tr ואז בכל תא במערך לבצע split לפי td…

    זה יצור לך מערך שיכיל בכל תא שלו מערך של התוכן של ה td… כמובן, תצטרך למחוק ממנו את שאר התגים של html, אבל זה כבר לא בעיה…

שלח תשובה