簡単に言え
ば、このような文字列を考えると-
MAX_checkTime_Hour('0,1', '=~') and (MAX_checkTime_Day('1,2', '=~') or MAX_checkTime_Day('1,2', '=~')) and MAX_checkGeo_Country('DZ,AO,BJ)
またはなど<br />
のパターンの前後にタグを挿入したいので、出力は-and MAX_
and (MAX_
and ((MAX_
MAX_checkTime_Hour('0,1', '=~')<br /> and <br />(MAX_checkTime_Day('1,2', '=~') or MAX_checkTime_Day('1,2', '=~'))<br /> and <br />MAX_checkGeo_Country('DZ,AO,BJ)
私がこれまでに行ったこと
次の正規表現の置き換えで、私はもうすぐそこにいます。タグの挿入<br />
は機能していますが、固定数の
sを挿入する必要があります-
preg_replace("/\s+and\s+MAX_/",'<br /> and <br />MAX_',$str);
私がしたかった-
- 空白の正確な数を保持します。
- の前の最初の括弧の正確な数を保持します
MAX_
。
したがって、元の文字列がこのようなものだった場合-
MAX_checkTime_Hour('0,1', '=~') <3 white spaces here> and <5 white spaces here> #2 first brackets here#MAX_checkTime_Day('1,2', '=~')
出力を-にしたい
MAX_checkTime_Hour('0,1', '=~')<br /> <3 white spaces here> and <5 white spaces here> <br /><first brackets here>MAX_checkTime_Day('1,2', '=~')
更新
空白の可変数が変数に格納されると仮定して、次のことを試しましたが、機能しませんでした-
preg_replace("/{\s+}and{\s+}MAX_/",'<br />$1and$2<br />MAX_',$str);