Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 运行preg_替换两次是否应中断WAMP连接?_Php_Regex_Preg Replace_Wamp - Fatal编程技术网

Php 运行preg_替换两次是否应中断WAMP连接?

Php 运行preg_替换两次是否应中断WAMP连接?,php,regex,preg-replace,wamp,Php,Regex,Preg Replace,Wamp,我正在尝试使用preg\u replace替换字符串中的某些文本。现在,也许我做得不对,但运行一次,并不能解决问题,因为我试图替换重叠的字符串。现在,当我运行一次preg_replace时,它工作得很好(我希望只减去一半的文本)。当我尝试运行它两次时,我在Chrome和IE中都出现了错误的连接(所以这不是浏览器问题,不是我想的那样),至少对于WAMP(我还没有在真正的服务器上尝试过) 那么,这有什么问题吗: 1) 我的PHP逻辑 2) 我的正则表达式 3) 还是准备替换和WAMP 我想将以下格式

我正在尝试使用
preg\u replace
替换字符串中的某些文本。现在,也许我做得不对,但运行一次,并不能解决问题,因为我试图替换重叠的字符串。现在,当我运行一次
preg_replace
时,它工作得很好(我希望只减去一半的文本)。当我尝试运行它两次时,我在Chrome和IE中都出现了错误的连接(所以这不是浏览器问题,不是我想的那样),至少对于WAMP(我还没有在真正的服务器上尝试过)

那么,这有什么问题吗:

1) 我的PHP逻辑

2) 我的正则表达式

3) 还是准备替换和WAMP

我想将以下格式的所有数字分开(在它们之间加空格):0.xx

$text = "0.450.590.88 AUT 0.570.210.400.89 CUS 0.630.310.370.440.87 DEL 0.580.130.310.570.450.89 EVA 0.600.230.420.550.440.650.91 INT 0.590.390.620.530.540.520.560.85 IOP 0.480.240.440.440.440.550.580.600.88 MON 0.690.390.480.560.640.610.610.550.520.85"; 

for ($i=0;$i<2;$i++)
    $text = preg_replace('#0\.(\d{1,4})0\.#', '0.${1} 0.', $text);
如果我将循环更改为运行一次,或者缩短文本,PHP运行得很好


由于这是一个较大文本的一部分,我不想将它们粘贴到一个数组中,我只希望它们的格式更好。作为一段背景信息,该文本来自PDF中的一个相关表,该表已提取文本,但未保留空白

我不知道preg_replace与服务器崩溃之间有什么关系,但您可以一步完成,而无需循环:

$result = preg_replace('~(?<=[0-9])(?=0\.[0-9]{1,4})~', ' ', $text);

$result=preg_replace(“~”)工作正常,可能是其他地方的错误?导致服务器崩溃的示例的大小是多少?您发布的示例应该无法使服务器崩溃。
$result = preg_replace('~(?<=[0-9])(?=0\.[0-9]{1,4})~', ' ', $text);