代码之家  ›  专栏  ›  技术社区  ›  alex

如何判断PHP中的字符串是否附加了换行符?

  •  1
  • alex  · 技术社区  · 14 年前

    我只是 answered this question ,并试图想出一个将返回的正则表达式 true 如果字符串的前面或后面有新行。

    我想到了 this ...

    var_dump(preg_match('/^\n|\n$/', $testVar));
    

    但我知道错误。。。

    警告:preg_match():第5行出现内部pcre_fullinfo()错误-3

    我不知道我做错了什么。对我来说就是 匹配换行符是第一个字符或最后一个字符的位置 .

    请启发我。

    谢谢。

    更新

    我意识到这个题目应该是 为什么我的正则表达式不工作? 或类似的。

    但是 ,我将保持原样,并欢迎regex的其他解决方案。

    3 回复  |  直到 8 年前
        1
  •  5
  •   KingCrunch    14 年前

    为什么不使用通常的字符串函数?

    if ((substr($string,0,1) == "\n") || (substr($string,-1) == "\n")) {
        // found newline at the beginning or end
    }
    

    或者只是

    if (($string[0] == "\n") || ($string[strlen($string)-1] == "\n")) { /* ... */ }
    
        2
  •  3
  •   bcosca    14 年前
    trim($testVar,"\n") != $testVar
    
        3
  •  1
  •   Alex    14 年前

    不是你,是我! 你没有做错什么。这是服务器的php安装问题。我记得在使用apache2在debian服务器上安装PHP时看到的。我不太清楚 为什么? 什么 是的,但我最终在服务器上重新安装了php,一切都很好。