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

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

חיים 02-09-07 14:46

[PHP]איך אני יכול להוציא טקסט מסויים מתוך מחרוזת?
 
אני רוצה להוציא מתוך מחרוזת טקסט מסויים שנמצא באמצע למשל יש לי מחרוזת כזאת:
קוד:

zxc
<!--start of right block-->
right block html entry
<!--end of right block-->
asd

עכשיו אני רוצה להוציא רק את right block html entry איך לעשות את זה?
תודה מראש.

Daniel 02-09-07 15:11

אני ממש מקווה שאני צודק, לא ניסיתי,
PHP קוד:

preg_replace("/(.+)\<!--start of right block--\>(.+)\<!--end of right block--\>(.+)/""\2"$string); 

אני בטוח שאפשר לעשות את זה באופן יותר יעיל ב-preg_match, אבל אף פעם לא התעמקתי בפונקציה.

חיים 02-09-07 15:14

חח לא אחי זה לא עזר זה השאיר הכל גם את הזכויות וכ"ו
עריכה: אחי שיניתי את זה וזה עזר אבל אין דרך קצרה ופשוטה יותר אולי?

Elad-A 02-09-07 17:26

דוגמא:

PHP קוד:

$string 'dffdfdfdf <tag>elada</tag>dfsfsdfs sdfsdfs ';
preg_match_all('/<tag>(.*?)<\/tag>/i' $string $array);
print_r($array); 


חיים 02-09-07 17:32

ציטוט:

נכתב במקור על ידי Elad-A (פרסם 551640)
דוגמא:

PHP קוד:

$string 'dffdfdfdf <tag>elada</tag>dfsfsdfs sdfsdfs ';
preg_match_all('/<tag>(.*?)<\/tag>/i' $string $array);
print_r($array); 


תודה רבה לשניכם הבאת לי שני תשובות טובות מאוד אני ישתמש בהם כמובן ושוב תודה רבה

Elad-A 02-09-07 17:42

בדקתי לך ויותר נכון שהקוד יהיה ככה:

PHP קוד:

$string 'zxc<!--start of right block-->right block html entry<!--end of right block-->asd';
preg_match_all('/<!--start of right block-->(.*?)<!--end of right block-->/is' $string $array);
print_r($array); 

**שים לב ל s שהוספתי (רווחים)


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

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