我有一个段落 -
== one ===
==== two ==
= three ====
等
=
符号的数量在段落的每一行都有所不同。
我想写一个 preg_replace()
表达式,这样我就可以替换=
符号之间的文本。
示例:
== DONE ===
==== DONE ==
= DONE ====
我尝试了preg_replace("/\=+(.*)\=+/","DONE", $paragraph)
,但这并不奏效。我哪里错了?
答案 0 :(得分:1)
您必须放回=
。
此外,代替.*
使用[^=]*
(匹配不是=
的字符),以便=
不会因为替换而被吃掉。
此外,您不必逃避=
:
preg_replace("/(=+)([^=]*)(=+)/","$1 DONE $3", $paragraph);