serialize()
外部ソースから取得した PHPの文字列があります。
s:4:"0.00";s:4:"type";s:5:"price";s:3:"$20";s:12:"Foo "Bar" Baz";s:1:"y";
を正常に行うに"Bar"
は、に置き換える必要があります。"Bar"
unserialize()
preg_replace()
これを達成するためにどのように使用できますか?
を試し(?<!s:\d{1,4}:)("[0-9a-zA-Z ]+")
ましたが、PHP が後読みエラーをスローします。後読みアサーションはオフセット 14 で固定長ではありません
更新: これは私が作ったダミー文字列です。文字数を間違って数えました...カウントが正しいと仮定しても安全です...文字列は実際には次のようになります。
s:4:"0.00";s:4:"type";s:5:"price";s:3:"$20";s:13:"Foo "Bar" Baz";s:1:"y";