CSV インポート ツールを使用し、特定のインポート構文があるため、インポート結果から URL を取得するためにいくつかの調査を行いました。
これはインポートされたテキストの例です。
... img src="MULTIFEED_START_7_http://www.suppliertestcase.com/423_1.jpgMULTIFEED_END_7_"
したがって、テキスト MULTIFEED_START_7_ (6 または 5 の可能性もあります...) とテキスト MULTIFEED_END_7 (再び 6 または 5 の可能性もあります...) の間にある画像の URL を取得したいと考えています。
いくつかのテストの後、それがうまく動作することがわかりました:
preg_match_all('#(http://(.*).(gif|png|jpg))#i' , $post[0]->post_content , $matches);
.jpg、.gif、または .png で終わる場合、すべての URL を正しく取得します
出力はhttp://www.suppliertestcase.com/423_1.jpgです
しかし...はい、今私の問題です。
一部のサプライヤーは、.jpg または .gif 拡張子を付けずにインポートで製品写真の URL を提供しています。彼らはfeにこのURLを与えるだけです(ファイル拡張子なしのディレクトリURLのみ):
img src="MULTIFEED_START_7_http://www.suppliertestcase.com/productphoto/MULTIFEED_END_7_"
したがって、grep の出力はhttp://www.suppliertestcase.com/productphoto/になるはずです 。http:// で始まり、MULTIFEED_END テキストより前のすべての URL を取得するにはどうすればよいですか?