我想preg_replace
在 PHP 中对以下字符串执行字符替换:
Dieser Text enthält diverse Akürzungen wie z.B., d.h., u.a. oder m.w.H.
输出应该是这样的:
Dieser Text enthält diverse Abkürzungen wie z.\,B., d.\,h., u.\,a. oder m.\,w.\,H.
目前我正在使用这段代码:
<?php
$text = 'Dieser Text enthält diverse Akürzungen wie z.B., d.h., u.a. oder m.w.H.';
$searchFor = array(
'/([a-z]\.)([a-z]\.)([a-z]\.)/i', // m.w.H.
'/([a-z]\.)([a-z]\.)/i', // z.B.
);
$replaceWith = array(
'\1\\,\2\\,\3',
'\1\\,\2',
);
$replaced = preg_replace($searchFor, $replaceWith, $text);
?>
有没有办法结合这两个正则表达式?
当我使用以下表达式时,我无法使用匹配的字符:
/([a-z]\.){2,}/i
任何帮助是极大的赞赏。