【问题标题】:regular expression for matching number and spaces匹配数字和空格的正则表达式
【发布时间】:2011-02-11 12:57:33
【问题描述】:

我想创建一个只允许空格和数字的正则表达式..

我如何用 PHP 来检查这个?

【问题讨论】:

    标签: php regex


    【解决方案1】:
    $pattern = '/^[0-9 ]+$/';
    
    if ( preg_match ($pattern, $text) )
    {
        echo 'allowed';
    }
    

    编辑:

    如果您想限制为 15 个字符(正如您在评论中提到的),您可以使用 { } 来分隔最小和最大长度。

    模式变成:

    $pattern = '/^[0-9 ]{1,15}$/';
    

    允许 1 到 15 个字符。

    【讨论】:

      【解决方案2】:

      正则表达式如下。

      /^[\d ]+$/i
      

      要回答你如何在php中运行它,我需要知道上下文,你需要它在单行输入还是多行输入上运行?你需要它循环运行吗?

      【讨论】:

      • 单行只有大约 15 个字符
      【解决方案3】:

      这应该可行:

      ^[\s\d]*$
      

      您可能应该指定是否需要“零个或多个”或“一个或多个”空格。以上允许空字符串通过评估。

      【讨论】:

      • 这个和我发布的完全一样,除了允许空字符串通过,如果发生的话,可以使用制表符而不是空格。
      • \s 允许所有类型的字符,假设他只想允许'空格'(0x32)这还不够。
      猜你喜欢
      • 2010-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多