ไม่เข้าใจคำสั่ง preg_replace

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

profess79
PHP Newbie
PHP Newbie
Posts: 2
Joined: 26/12/2017 5:02 pm

ไม่เข้าใจคำสั่ง preg_replace

Post by profess79 »

สมมติข้อความแบบนี้

Code: Select all

 [em=yocie002] 
ต้องการให้ออกมาแบบนี้

Code: Select all

<img border='0' src='/pic/yocie/yocie002.gif' title='yocie002'>"
คือหาคำว่า [em= แล้วแทนที่ด้วย <img border='0' src='/pic/
แระก็ yocie มาเป็นชื่อ folder
แระก็ yocie002 มาเป็น title กับ ชื่อรูป แล้วเพิ่ม .gif เข้าไป
ตรง ] ก็เปลี่ยนเป็น >

หาตัวอย่าง code มาได้แต่อ่านแล้วงงมาก ยิ่งมันต่อเนื่องไปเรื่อง regular expression ยิ่งงงหนักเข้าไปอีก
อย่างตรงนี้

Code: Select all

$s = "[img=https://www.mindphp.com/forums/images/smilies/icon_idea.gif]";
$s = preg_replace("/\[img=(http:\/\/[^\s'\"<>]+(\.(gif|jpg|png)))\]/i", "<img border=\"0\" src=\"\\1\" alt='' />", $s);
จะออกมาเป็น

Code: Select all

<img src="https://www.mindphp.com/forums/images/smilies/icon_idea.gif">

ตอนนี้ทำแบบนี้ก็ยังไม่ออกมาเป็นแบบที่ต้องการ

Code: Select all

$s = preg_replace("/\[em=([^\s'\"<>])/", "\\1\.gif" , $s);



รบกวนหน่อยครับ


:lol: :lol: :lol:

profess79
PHP Newbie
PHP Newbie
Posts: 2
Joined: 26/12/2017 5:02 pm

Re: ไม่เข้าใจคำสั่ง preg_replace

Post by profess79 »

ได้ละครับ

Code: Select all

$s = preg_replace("/\[em\=(([a-z]+)\d+)\]/","<img border='0' src='/pic/$2/$1.gif' title='$1'>",$s);
ขอบคุณลุง frost@cz

ปล. ถามไว้หลายที่ครับ 555

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: No registered users and 6 guests