删除引用字符串中的换行符[重复]
Posted
技术标签:
【中文标题】删除引用字符串中的换行符[重复]【英文标题】:Remove newlines in quoted string [duplicate] 【发布时间】: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个或多个?并用双引号替换匹配项?
基本上是的,但从技术上讲,它用双引号替换任意数量的回车和/或换行符,后跟双引号,并且双引号必须是字符串中的最后一个字符。
【参考方案1】:
有点像
$string = trim(preg_replace('/\s\s+/', ' ', $string));
会做好的
【讨论】:
它是如何完成这项工作的? 感谢您的评论。这是否像用空格替换任何类型的空白,并修剪前导和尾随空格?这很聪明。以上是关于删除引用字符串中的换行符[重复]的主要内容,如果未能解决你的问题,请参考以下文章