2012-02-20 8 views
-1

を使用して= \ "テキスト\" と= "テキスト" を交換してくださいare fixed = "..." 二重引用符の前にスラッシュを追加するだけです。は、私は次のように交換したいにpreg_replace

$content = preg_replace('/="[^a-zA-Z#0-9]"/', '=\"[^a-zA-Z#0-9]\"', $line); 

上記の解決策は機能しませんでした。何か案が?

+0

addslashes()はしませんか? – GordonM

+0

preg_replaceを使用する必要がありますか? –

+0

はい... Preg_replaceが必要です... – user311509

答えて

2

addslashes?さておき、あなたは上の例のいずれかを読んでいないように見える

preg_replaceさんmanual page - あなたが持っていた場合、あなたはあなたがサブパターンキャプチャすることが知られているだろう括弧付き(この場合は引用符の内容)と、代替文字列に入れるには$1を使用してください。

0

あなたは解決

$str = '"Text"'; 
str_replace('"','\"', $str); 
+0

問題は、私は "...私はちょうどこのフォームに来るそれらのバックスラッシュが必要なテキストの他の束があります:" "...."それを変更する= \ "... \" – user311509

+0

一重引用符で囲まれた単純なテキスト全体を一重引用符で囲み、str_replaceを$ str = '"double"コードの "wrpping"として使用します。 echo str_replace( '"'、 '\"'、$ str); – Poonam

0
$content = preg_replace('#="(.*?)"#', '=\"\1\"', $line); 

を使用することができます。

関連する問題