ホームページ >バックエンド開発 >PHPチュートリアル >開始文字列と終了文字列の一部を取得するためのPHP正規表現

開始文字列と終了文字列の一部を取得するためのPHP正規表現

WBOY
WBOYオリジナル
2016-07-29 09:00:172129ブラウズ

discuz では、返信テーブル (forum_post) のメッセージ フィールドの内容は次の形式で保存されます:

$message = "[i=s] u672cu5e16u6700u540eu7531 areyouok u4e8e 2016-3-5 15:12 u7f16u8f91 [/i ]nn[attach]41[/attach][attach]10[/attach]u592au9633u5149uff0cu91d1u4eaeu4eaeuff0cu96c4u9e21u9ad8u9ad8u5531rn";

[attach] と [/attach] の間の部分は添付ファイル ID です。これを取得してコンテンツを見つける必要があります。特定の添付ファイル。

ここでは、php 正規表現を使用して開始文字列と終了文字列の間の内容を取得し、それを配列に入れる必要があります

テストに合格したいくつかのコード:

//Get the start文字列
$subject = '"./uploads/meinian/96140234039638604.html"n"./uploads/meinian/json_30_60393801_20140924.txt"'; の後の文字。
$pattern = '#"./uploads/meinian/(.*?)"#i';
$items = preg_match_all($pattern, $subject, $matches);
var_dump($matches);
echo '< ;hr/>';
//開始文字列と終了文字列の間の部分を取得します
$subject = "[i=s] u672cu5e16u6700u540eu7531 areyouok u4e8e 2016-3-5 15:12 u7f16u8f91 [/i]nn[attach ]41[/attach][attach]10[/attach]u592au9633u5149uff0cu91d1u4eaeu4eaeuff0cu96c4u9e21u9ad8u9ad8u5531rn";
$pattern = '#[attach](.*?)[\/attach]#i';
$items = preg_match_all($pattern)アジサシ、 $subject, $matches);
$target = preg_replace($pattern,'',$subject);
echo 'target='.$target.'


';
var_dump($matches);
echo '
';
?>

以上、開始文字列と終了文字列の一部を取得するためのPHP正規表現を内容も含めて紹介しましたが、PHPチュートリアルに興味のある方の参考になれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。