文字列: {user:link islocal='1'} /2013/userup/100/131a2Z34-5N8.doc {/user:link}
131a2Z34-5N8 文字列を抽出するには? ? ?
たとえば、類似した文字列が多数あります。
文字列 1: {user:link islocal='1'} /2013/userup/100/131a2Z34-800.doc {/user:link}
文字列 2: {user: link islocal='1'} /2013/userup/100/131a2Z34-801.doc {/user:link}
文字列 3: {user:link islocal='1'} /2013/userup/100/131a2Z34-802 .doc {/user:link}
それぞれの文字列を取り出します:
131a2Z34-800
131a2Z34-801
131a2Z34-802
正規表現を使用する必要がありますか? 実装方法は?
$s=<<<txt字符串1:{user:link islocal='1'} /2013/userup/100/131a2Z34-800.doc {/user:link}字符串2:{user:link islocal='1'} /2013/userup/100/131a2Z34-801.doc {/user:link}字符串3:{user:link islocal='1'} /2013/userup/100/131a2Z34-802.doc {/user:link}txt;preg_match_all('#/([^/]+)\.doc\s*{/user#sU',$s,$m);print_r($m[1]);
次のような状況があります:
{user:link islocal='1'} /私はランダムな文字列です/私はランダムな文字列です/私はランダムな文字列です/Iこれはランダムな文字列 {/user:link} です
"{/user:link}" だけが同じです。doc が続いていない可能性があります。それは .xls .txt である可能性がありますが、そこにあるはずです
と思います。 /131a2Z34-802.doc からのみ取得できます {/user:link} もう一つの手もありますが、思いつきません
preg_match_all('#/([^/]+?)\.#',$s,$m);print_r($m[1]);