删除php中的换行符

删除php中的换行符,php,Php,以下是php中preg\u replace()函数的语法: $new_string = preg_replace($pattern_to_match, $replacement_string, $original_string); 如果文本文件同时具有Windows(rn)和Linux(n)行尾(EOL)字符,即换行符 那么,应用preg_replace()去除所有行尾字符的正确顺序是以下哪项 首先移除cr $string = preg_replace('|rn|','',$string);

以下是php中
preg\u replace()
函数的语法:

$new_string = preg_replace($pattern_to_match, $replacement_string, $original_string);
如果文本文件同时具有Windows(rn)和Linux(n)行尾(EOL)字符,即换行符

那么,应用
preg_replace()
去除所有行尾字符的正确顺序是以下哪项

  • 首先移除cr

    $string = preg_replace('|rn|','',$string);
    $string = preg_replace('|n|','',$string);
    
  • 首先删除纯nl

    $string = preg_replace('|n|','',$string);
    $string = preg_replace('|rn|','',$string);
    

  • 使用正则表达式的强大功能,您可以指定如下内容

    '|[\r][\n]|'
    
    具体来说,是指0或1'\r',然后是0或1'\n',这将匹配linux和windows下的行尾

    编辑: 使用内置函数将以更好的方式实现相同的结果,但仅当换行符位于字符串的开头或结尾时才可以。

    我建议使用:(Windows、Unix和Mac下线字符)

    注意
    m
    多行修饰符

    以下哪项是应用preg_replace删除所有行尾字符的正确顺序


    为什么你认为顺序很重要?而且实际上不需要正则表达式。str_replace将执行trickAs将“trim”,想想看。根据php文档(答案中的链接),它将删除“\r”、“n”、“t”、“0”、“和”\x0B”(垂直选项卡)。但是,请记住,它只从字符串的开头和结尾开始执行。字符串中的这些字符不会受到影响。如果已经替换\r和\n,则不需要替换\r\n。
    $string = preg_replace('/\r|\n/m','',$string);
    
    $string = preg_replace("!\r|\n!m",'',$string);