文字列内の一連の文字を照合したいと思います。たとえば、文字 TBEI がある場合、文字 T で始まり、文字 B と E を少なくとも 1 回含むすべての文字列に一致させたいとします。2 番目の文字は 3 番目の文字の前に表示される必要があり、文字の間に無限の数の文字が存在する可能性があります。
つまり、文字列 TBE は文字列 Table、Trouble、および Terrible に一致しますが、Teb には一致しません。
これをphpでコーディングしようとしています
$A = 'T';
$B = 'B';
$C = 'E';
$matches = preg_grep('/^'.$A.'.+'.$B.'.+'.$C.'/', $words);
ここで、words は単語のリストを含む配列です。私のやり方ではアルゴリズムは機能しますが、$A $B または $C の間に文字がない単語を見つけることができません。
正規表現を使用してこれを修正するにはどうすればよいですか?