0
私は少し迷っています。以下の正規表現は、期待通りに動作します:正規表現が閉じないスパン
$src_data = preg_replace("/"(.+?)"/", "<span class=\"src_att\">$0</span>", $src_data);
$src_data = preg_replace("/'(.+?)'/", "<span class=\"src_att\">$0</span>", $src_data);
しかし、これはスパンクローズに失敗:十分
$src_data = preg_replace("/\/\/(.+?)\n/", "<span class=\"src_com\">$0</span>", $src_data);
確かにそれは何かのトリビアですが、私はエラーを見ることができません。どんな助力も感謝しています。
EDIT:
の$ src_dataは何もすることができ、例えば1行または複数行。以下の単一引用符を持つ例である - 期待どおりに動作awhich:
$ds_type = array ('Bytes', 'KiB', 'MiB', 'GiB', 'TiB');
コメントに一致するようにしようとすると、決算スパンを追加するために失敗し、たとえ:
//** this is just a comment
出力は明らかにrenderd罰金ですが、マークアップは、スパンがないため無効です。
$ src_dataのいくつかの例を追加できます – Danijel
''は改行が '$ 0'の最後にあるので次の行にあります。 – Barmar
文字列の末尾ではなく行末にマッチする 'm'オプションとともに' \ n'の代わりに '$'を使うべきでしょう。 – Barmar