【发布时间】:2014-12-16 17:54:23
【问题描述】:
在 PHP 中,我正在处理双引号之间的字符串,我无法控制这些字符串的生成方式。不知何故,在某些时候,换行符出现在某些字符串的末尾。结果是这样的:
"This is a value"
"I'm another string!"
"I somehow have a newline at the end
"
"Okay, this is the last one.."
如果我要迭代地遍历所有这些字符串,我怎样才能最好地删除这些换行符?
我可以想象我应该使用preg_replace,但我不知道在带引号的字符串末尾去掉换行符的最佳模式是什么。
提前致谢!
杰伦
【问题讨论】:
-
应该是这样的:
preg_replace('/[\r\n]+"$/, '"', $string); -
@Narf:感谢您的回复!你能解释一下这个吗?是否像双引号之前的任何换行符,1个或多个?并用双引号替换匹配项?
-
基本上是的,但从技术上讲,它用双引号替换任意数量的回车和/或换行符,后跟双引号,并且双引号必须是字符串中的最后一个字符。