512
צפיות
צפיות
7
תשובות
תשובות
המרת טבלה בביטוי רגולרי. (PHP)
אני שובר ת'ראש כמה ימים עם זה, אז תודה מראש להתייחסות…
אני צריך להוציא מטבלת HTML (שיכולה להכיל כל תאג שהוא) רק את הנתונים המילוליים, ולהפוך אותה לטבלה ב-MySql.
בעיקר חשוב הביטוי הרגולרי שידע להחזיר מערך רב מימדי שמייצג את הטבלה לפי שורה ותא, והדרך להשתמש בה – הפונקצייה עם הפרמטרים הרלוונטים.
7 תשובות
הנה ניסיון
אתה עושה ככה:
1. אתה מכניס את כל הטקסט למשתנה
2. אתה מחליף את כל הטקסט עם ה-regExp הבא:
/<[^>]*>/g
ואז אתה עושה החלפה לזה —–iam_the_winner——
אח"כ אתה עושה split למערך וואללה זה מוכן
רעיון יפה, אבל…
א) split מייצר מערך חד מימדי.
ב) יכולים להיות תגים בתוך הטבלה שהם לא תגים של td או tr, והם ייצרו לך תאים מיותרים….
אני דוקא הייתי הולך על פתרון שהוא יותר לכיון ה dom, כמו oTable.childNodes, בשביל לקבל את ה collection של ה tr, ואז מתוכו את ה collections של ה td בכל שורה. כמובן שזה ניתן לביצוע רק בצד הלקוח, אז אני לא יודע אם זה מתאים כתשובה לשאלה הזו.
והנה דוגמא
נחמד, אתה כתבתה?
הייתי מפוקק את זה..
כן
באמת רעיון יפה! ותודה גם למבצע!
אבל אני מנסה על השרת.
בכל זאת תודה!
אממ… אז אתה יכול לפתח את הרעיון
של "מי אמר אני" ולבצע split לפי tr ואז בכל תא במערך לבצע split לפי td…
זה יצור לך מערך שיכיל בכל תא שלו מערך של התוכן של ה td… כמובן, תצטרך למחוק ממנו את שאר התגים של html, אבל זה כבר לא בעיה…