gpt4 book ai didi

php - 如何从 PHP 中的字符串中删除多个空格和换行符?

转载 作者:搜寻专家 更新时间:2023-10-31 20:48:56 24 4
gpt4 key购买 nike

我有一个带有文本区域的表单,我需要从此处输入的字符串中删除最终的多个空格和多个换行符。
我写了这个函数来删除多个空格

function fix_multi_spaces($string)
{
$reg_exp = '/\s+/';
return preg_replace($reg_exp," ",$string);
}

此函数适用于空格,但它也会替换新行,将它们变成一个空格。
我需要将多个空格更改为 1 个空格,将多个新行更改为 1 个新行。
我该怎么办?

最佳答案

使用

preg_replace('/(( )+|(\\n)+)/', '$2$3', $string);

这将特别适用于空格和换行符;如果您还想将它们作为目标,则必须将其他空白字符(例如 \t 用于制表符)添加到正则表达式中。

此正则表达式通过匹配或者一个或多个空格一个或多个换行符并将匹配项替换为空格来工作(但仅当匹配空格时)一个换行符(但前提是换行符匹配)。

更新:原来有一些正则表达式功能是为我不知道的这种情况量身定制的(非常感谢 craniumonempty 的评论!)。您可以将正则表达式写成更合适的

preg_replace('/(?|( )+|(\\n)+)/', '$1', $string);

关于php - 如何从 PHP 中的字符串中删除多个空格和换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10295374/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com