PHP字符串:在“\ end {Figure}”之后删除“\ newline”

时间:2013-08-24 04:11:49

标签: php string replace preg-replace

我有大约4000个字符的PHP字符串;如果识别出这个PHP字符串$ input1,$ input2或$ input3中的任何地方,我想用$ output字符串替换它。总结我想在“\ end {Figure}”之后删除“\ newline”

$input1 = "\end{Figure}\newline";
$input2 = "\end{Figure} \newline";
$input3 = "\end{Figure}\newline "

Required output: 
$output = "\end{Figure}"; 

您能否建议如何实现所需的输出?

1 个答案:

答案 0 :(得分:1)

你的问题不是很清楚,但也许这就是你要找的东西:

$result = preg_replace('~\\\end\{Figure}\K( )?\\\newline(?(1)| )~', '', $text);

模式细节:

~                # pattern delimiter
\\\              # backslash (must be double escaped inside quotes)
end\{Figure}
\K               # reset the begining of the match
( )?             # optional capturing group n°1
\\\newline
(?(1)| )         # if capturing group n°1 exists there is nothing else a space 
~