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

时间:2010-11-23 01:58:47

标签: php regex

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

我想出了this ......

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

但我收到了错误......

  

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

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

请赐教。

感谢。

更新

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

但是,我将保留原样,并欢迎使用正则表达式的其他解决方案。

3 个答案:

答案 0 :(得分:5)

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

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")) { /* ... */ }

答案 1 :(得分:3)

trim($testVar,"\n") != $testVar

答案 2 :(得分:1)

不是你,是我!你没有做错任何事。这是服务器的php安装问题。我记得在使用apache2在debian服务器上安装PHP时看到了这一点。我完全不知道为什么这是什么,但我终于在我的服务器上重新安装了php,一切都很好。