Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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 替换txt文件中的空格和特殊字符_Php_Regex - Fatal编程技术网

Php 替换txt文件中的空格和特殊字符

Php 替换txt文件中的空格和特殊字符,php,regex,Php,Regex,我对php和sql都是新手,现在我很难将空格转换或替换为分号。 下面是我的txt文件和php代码: Dst 47.532347.8000 0.3000-0.3000-0.2677----AD47_8 Dst 44.3483 44.8450 0.3000-0.3000-0.4967-0.1967您可以使用 这里, trim($line)删除两端的空白 str\u replace(“”,“”,…)-删除°字符 preg\u split(“~\s+~”,…)-按1个或多个空格字符进行拆分 当您分

我对php和sql都是新手,现在我很难将空格转换或替换为分号。 下面是我的txt文件和php代码:

Dst 47.532347.8000 0.3000-0.3000-0.2677----AD47_8

Dst 44.3483 44.8450 0.3000-0.3000-0.4967-0.1967您可以使用


这里,

  • trim($line)
    删除两端的空白
  • str\u replace(“”,“”,…)
    -删除
    °
    字符
  • preg\u split(“~\s+~”,…)
    -按1个或多个空格字符进行拆分

当您
分解该行时,
首先修剪它
$line=explode(“\n”,trim($line))
您的txt文件和您的php脚本可能有不同的编码,因此
str_replace
无法识别符号。@WiktorStribiżew trim函数不起作用,文件是ASCII格式的,我发现空格是ASCII中的数字32。我是否必须先将数据转换为utf-8,然后再使用trim?我错了,它是一个格式化的ANSI文件。所以请尝试
$line=print\r(preg\u split(“~\s+~”,str\u replace(“°”,”,trim($line))
<?php
$file_content = file("messdaten.txt");

foreach($file_content as $line){
    $line = explode("\n", $line);
    $line = preg_replace( "(\s+)",";",$line);
    $line = str_replace("°","",$line);
    print_r($line);
}
?>