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

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

Ori The Man 29-06-12 01:15

שליפת מידע מסויים צ String שלם
 
אני מנסה לקחת מידע מסויים מקטע מסויים
למשל בסקריפט של בדיקת דומיין אני מקבל הרבה מידע
ואני רוצה לשלוף רק את התאריך של סוף הדומיין.

לפני התאריך רשום validity:

אז עשיתי משהו כזה

PHP קוד:

$l=strstr($result'validity:');
echo 
substr($l9,15); 

יש דרך יותר פשוטה?
כי אם אני רוצה לשלוף הרבה פרמטרים מסויימים יהייה ממש בלתי אפשרי לעבוד ככה (לספור תווים :-0 )

תודה,

Haimz 29-06-12 07:18

regex ?
אולי ככה:
קוד:

preg_match("/validity\:(.+)/i", $string, $match);
print_r($match);


Ori The Man 29-06-12 11:39

קרוב.. אבל זה מדפיס גם את כל מה שבא אחרי התאריך...

meshuga 29-06-12 12:57

ציטוט:

נכתב במקור על ידי Ori The Man (פרסם 849254)
קרוב.. אבל זה מדפיס גם את כל מה שבא אחרי התאריך...

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

Ori The Man 29-06-12 14:13

בעיקרון זה נראה ככה:
validity: 22-02-2013

והסתבכתי בעעע יש למישהו מדריך טוב ל preg_match?

Ori The Man 29-06-12 16:03

הצלחתי :)
PHP קוד:

preg_match("#[0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]#"$result$match); 


Itay 29-06-12 18:33

קצת יותר הגיוני לכתוב את זה ככה:
PHP קוד:

preg_match("#[0-9]{2}-[0-9]{2}-[0-9]{4}#"$result$match); 

יש לך את הסוגריים המסולסלים שמציינים כמה תווים צריכים להיות, אתה יכול לרשום גם משהו כמו {2,4} שאומר בין 2 ל-4 תווים, או {2,} שאומר לפחות 2 תווים

Ori The Man 29-06-12 18:45

ציטוט:

נכתב במקור על ידי Itay (פרסם 849341)
קצת יותר הגיוני לכתוב את זה ככה:
PHP קוד:

preg_match("#[0-9]{2}-[0-9]{2}-[0-9]{4}#"$result$match); 

יש לך את הסוגריים המסולסלים שמציינים כמה תווים צריכים להיות, אתה יכול לרשום גם משהו כמו {2,4} שאומר בין 2 ל-4 תווים, או {2,} שאומר לפחות 2 תווים

תודה!

אני דיי חדש בכל העניין של preg_match

אדיר 29-06-12 19:47

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

בנוסף לכך, במידה ובאותו הדף יש תאריכים נוספים בתבנית הזאת -
ניתן להוסיף prefix כמו validity: לפני הביטוי הקיים וכך למקד אותו קצת יותר.


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

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