我要删除“。” (点)括在模式中的每个单词之后。
输入:
Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.
输出:
Lorem *|Ipsum|* is simply *|dummy|* text of the *|printing|* and typesetting *|industry|*.
答案 0 :(得分:2)
您可以使用此正则表达式以及适当的分组来捕获*|sometext.|*
模式的文本,
(\*\|[^|]+)\.(\|\*)
并替换为$1$2
,其中*|sometext
部分在组1中被捕获,.
被排除在分组之外,因此它被删除,|*
部分在组2中被分组。
$s = "Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.";
echo preg_replace('/(\*\|[^|]+)\.(\|\*)/', '$1$2', $s);
打印以下内容,并在*|text.|*
内删除点,
Lorem *|Ipsum|* is simply *|dummy|* text of the *|printing|* and typesetting *|industry|*.
答案 1 :(得分:1)
这可能会帮助您这样做:
$string = 'Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.';
$output = preg_replace('/(\.\|)/s', '|', $string);
var_dump($output);
"Lorem *|Ipsum|* is simply *|dummy|* text of the *|printing|* and typesetting *|industry|*."
答案 2 :(得分:0)
我们可以使用 str_replace()。
$string = 'Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.';
$replacedString = str_replace('.|', '|', $string);`
您可以在https://www.w3schools.com/php/showphp.asp?filename=demo_func_string_str_replace
中查看有关此功能的更多信息