【问题标题】:PHP String Parsing Strip *First* enter/return space from form textareaPHP String Parsing Strip *First* 从表单文本区域输入/返回空间
【发布时间】:2010-07-22 08:28:50
【问题描述】:

如何从变量(从文本区域提交)获取的文本中删除 第一个(在任何可见文本之前)输入/返回空格?

【问题讨论】:

  • quote kgb “它不起作用的事实可能意味着您尝试删除的字符不是真正的新行字符”

标签: php string whitespace return space


【解决方案1】:

像这样:

$str = str_replace("\n\r", '', $content);

注意:如果你想将newlines转换为<br />,请改用nl2br

还要注意"\n\r" 适用于 Windows 系统,在 unix/linux 上是 \n

更新:

试试这个正则表达式:

$str = preg_replace(/[\n\r{2,}]+/, "\n", $content);

【讨论】:

  • 对不起 - 意思是说第一个空格..例如,当用户在实际可见文本输入之前不小心按了几次输入时
【解决方案2】:
$userinput = trim($userinput)

trim() works for followings, though you can strip some of those giving a char list
    * " " (ASCII 32 (0x20)), an ordinary space.
    * "\t" (ASCII 9 (0x09)), a tab.
    * "\n" (ASCII 10 (0x0A)), a new line (line feed).
    * "\r" (ASCII 13 (0x0D)), a carriage return.
    * "\0" (ASCII 0 (0x00)), the NUL-byte.
    * "\x0B" (ASCII 11 (0x0B)), a vertical tab.

【讨论】:

    【解决方案3】:

    ltrim 仅删除文本之前的空格。您可以将不需要的其他字符数组放入第二个参数中。

    $userinput = ltrim($userinput, $charsYouDontNeed);
    

    它不起作用的事实可能意味着您尝试删除的字符并不是真正的换行符

    【讨论】:

      【解决方案4】:

      试试:

      $str = preg_replace('/[\n\r{2,}]+/', "\n", $content);
      

      【讨论】:

        猜你喜欢
        • 2019-05-11
        • 1970-01-01
        • 2018-08-04
        • 2014-02-17
        • 2019-03-06
        • 1970-01-01
        • 2015-04-18
        • 2015-04-15
        • 1970-01-01
        相关资源
        最近更新 更多