0

bbCode の置き換えを作成しましたが、リンクに行き詰まりました。

$replacements[3] = '<a href="\1">\2</a>';

すぐに置き換えられますが、URL が間違っています... mydomain.com http:\\somelink.com\
これの何が問題なのですか?

4

1 に答える 1

1

あなたは実際にそれに一致する正規表現を示していません..しかし、それは次のようなものでなければなりません:

探す

"'\[url=(.*?)\](.*?)\[/url\]'i"

交換

"<a href=\"\\1\">\\2</a>"

preg_replace("'\[url=(.*?)\](.*?)\[/url\]'i", 
             "<a href=\"\\1\">\\2</a>", 
             "[url=www.google.com]Google![/url]"
             );

出力

<a href="www.google.com">Google!</a>

見苦しく、必要がないため、意図的に正規表現で URL を検証しないことに注意してください。を使用して検証しますfilter_var(..., FILTER_VALIDATE_EMAIL);

于 2012-07-16T23:30:02.230 に答える