我想创建一个正则表达式,根据我所在国家/地区的印刷规则,用硬空格替换普通空格。它不应该触及 HTML 标签。
这些示例中的所有空格都应该是难以破解的:
数字
1 000
10 000
100 000
1 000 000
etc..
日期
17. 6.
17. 6. 2012
我想出了:
$pattern = '/((\d\.?)\s(\d))(?=[^>]*(<|$))/';
$text = preg_replace($pattern, '$2 $3', $text);
它可以做所有这些但是: 17. 6. 2012 它不会替换第二个空格,所以结果是 ->
17. 6. 2012
感谢您的任何帮助!