ホームページ >バックエンド開発 >PHPチュートリアル >配列値が文字列内に現れる順序を決定する
文字列内に配列値が現れる順序を決定する方法を見つけます
Array
$arr=array('A','M','N');
文字列は不確実です。ただし、M と N は文字列内に 1 回しか出現できません。複数回出現した場合は false が返されます
要件を満たしている場合は、配列 $data['M'], $data[ を返します。 'N']
例:
A MAN は 2, 4 を返します //M は配列内で 2 番目に出現し、N は配列内で 4 番目に出現します (A は 1 と 3 に出現します)
A BOY は false を返します //M または N は含まれません
MAN は 1,3 を返します //M は配列内で 1 番目に出現し、N は配列内で 3 番目に出現します (A は 2 に出現します)
A ATM IN returns 3,5 //M は配列内で 3 番目に出現し、N は配列内で 3 番目に出現します 4 番目に出現します (A は 1 と 2 に出現します)
------解決策のアイデア---------- -
元々は単純な問題だった問題が、あなたの説明のせいで複雑になってしまいました
それが何かわかるでしょうこのコードの結果を見てから行うこと
$arr = array('A','M','N');<br /><br />$data = array(<br /> 'A MAN',<br /> 'A BOY',<br /> 'MAN',<br /> 'A ATM IN'<br />);<br /><br />foreach($data as $text) {<br /> $t = str_split($text);<br /> $r[] = array_intersect($t, $arr);<br />}<br />print_r($r);
Array<br />(<br /> [0] => Array<br /> (<br /> [0] => A<br /> [2] => M<br /> [3] => A<br /> [4] => N<br /> )<br /><br /> [1] => Array<br /> (<br /> [0] => A<br /> )<br /><br /> [2] => Array<br /> (<br /> [0] => M<br /> [1] => A<br /> [2] => N<br /> )<br /><br /> [3] => Array<br /> (<br /> [0] => A<br /> [2] => A<br /> [4] => M<br /> [7] => N<br /> )<br /><br />)<br /><br />