替换字符串两种模式之间我有两个问题在PHP
-
1.
我试图取代我希望能够更换两种模式
例如之间的串some_string
在
(pattern1)some_string(pattern2)
现在我得到这两个图案的索引和使用substr_replace
任务
$base_url = 'pattern1_some_string&pattern2'
if (preg_match('/pattern1/', $base_url, $start, PREG_OFFSET_CAPTURE) == 1 &&
preg_match('/&pattern2/', $base_url, $end, PREG_OFFSET_CAPTURE)){
$start = $start[0][1];
$end = $end[0][1];
$starting_offset = strlen('pattern1') + 1;
$start_index = $start + $starting_offset;
$replacement_range = $end - $start_index - 1;
var_dump(substr_replace($base_url, "replacement", $start_index, $replacement_range));
有没有更简单的方法来做到这一点?
-
2.
提供有一个更简单的方法来做到1,它可以匹配第一检测的图案
。例如我希望能够以取代在some_string
(pattern1)some_string(pattern2)
,条件是(模式1)和(模式2)是第一个遇到的图案
(pattern1)(pattern1)some_string(pattern2)(pattern2) -> replacing with replacement
会导致
(pattern1)replacement(pattern2)
快速评论downvote背后的理性将有助于提高问题的质量。 – testing
我得到了问题1的答案,但它有点棘手。这里的问题1答案:http://pastebin.com/Gsv19L85,如果你尝试一点点找出问题的答案会出现:D ahha –
我不知道downvote,但事实上,你开始“我有两个问题”可能无济于事。请给每个问题一个问题。 – Ajean