この質問は、私の前の質問の続きです。
私はこのようなテキストを持っています:
<ORGANIZATION>Head of Pekalongan Regency</ORGANIZATION>, Dra. Hj.. Siti Qomariyah , MA and her staff were greeted by <ORGANIZATION>Rector of IPB</ORGANIZATION> Prof. Dr. Ir. H. Herry Suhardiyanto , M.Sc. and <ORGANIZATION>officials of IPB</ORGANIZATION> in the guest room.
前の私の質問からの回答コードを使用して、次のPREG_OFFSET_CAPTURE
ように追加します。
function get_text_between_tags($string, $tagname) {
$pattern = "/<$tagname\b[^>]*>(.*?)<\/$tagname>/is";
preg_match_all($pattern, $string, $matches, PREG_OFFSET_CAPTURE);
if(!empty($matches[1]))
return $matches[1];
return array();
}
出力が得られます:
配列 (
[0] => 配列 ( [0] => ペカロンガン県長 [1] => 14 )
[1] => 配列 ( [0] => IPB の学長 [1] => 131 )
[2] => 配列 ( [0] => IPB の職員 [1] => 222 ) )
14, 131, 222 はパターンマッチ時の文字のインデックスです。単語のインデックスを取得できますか? 私はこのような出力を意味します:
配列 (
[0] => 配列 ( [0] => ペカロンガン県長 [1] => 0 )
[1] => 配列 ( [0] => IPB の学長 [1] => 15)
[2] => 配列 ( [0] => IPB の職員 [1] => 27 ) )
PREG_OFFSET_CAPTURE
より多くのコードが必要な、または他の方法はありますか? 何も思いつきません。手伝ってくれてありがとう。:)