我需要转换这个字符串:
Hello, i'm **super** and **tall**.
到这一个:
Hello, i'm <big>super</big> and <big>tall</big>.
所以我用这个:
$string = "Hello, i'm **super** and **tall**.";
$old = array("**", "**");
$new = array("<big>", "</big>");
$newString = str_replace($old, $new, $string);
但它不起作用。
你能帮我吗?
感谢。
答案 0 :(得分:1)
你可以肯定清理一下,但这应该可以完成工作。
<?php
$string = "Hello, i'm **super** and **tall**.";
$pattern = '/\*{2}/';
$replacement = '<big>';
$result = preg_replace($pattern, $replacement, $string);
$pattern2 = '/\b(<big>)/';
$replacement = '</big>';
echo preg_replace($pattern2, $replacement, $result);
?>
我正在使用正则表达式反对数组但是,第一个正则表达式/\*{2}/
寻找2 **。如果if找到2 **,它将用<big>
替换它们。然后,第二个正则表达式\b(<big>)
将查找所有奇数事件(或结束标记),并将其替换为相应的结束html标记。希望这有帮助!
答案 1 :(得分:0)
您需要区分开始和开始标记,以便str_replace能够以您要求的准确精度完成工作。 例如:
onBlur