私は連結によってより大きくなる文字列変数を持っています。私はすべての部分文字列(すべてのループ反復)を検証する必要があります。ステップごとに一致させる方法
文字列の最後の有効な形式に一致するパターンを作成しました。
文字列のすべての部分文字列(部分的ですが正しい順序)を検証するにはどうすればよいですか?
$pattern = "#\{/?MYTAG(\d*)?\}#i"
$myString = ''
while (true) {
$myString .= $aChar;
// { => valid
// {m => valid
// {my => valid
// {myz => invalid break the loop
if (preg_match($pattern, $myString)) {
}
}
文字を任意にするように変更された?
を使用しようとしました。しかし、それは部分的な文字列と一致します:
// {mysdf
// it matches {my
// I want to return false, not get the valid part of the string
これは意味があると思います。
あなたはおそらくこのようなものを探しています: 'while(preg_match($ pattern、$ myString)){' – arkascha
@arkascha私のパターンは文字列の最後の形式にしか一致しません。つまり、完全一致の場合にのみ一致します。 – giannisf
PHP正規表現はファジー/部分一致をサポートしていません。あなたは別の方法を見つける必要があります。 *(例えば、あなたは閉じた中かっこを待ってからあなたのパターンをテストすることができます)* –