当前位置: 首页 > 知识库问答 >
问题:

regex模式-PHP中的noob

颜英博
2023-03-14
^(?:\s*\d{9}\s*(?:,|$))+$

但不去

请注意,逗号是必需的,因为输入文件应该在3至20个(最大)逗号分隔的整数之间

共有1个答案

郭麒
2023-03-14

您提到不应该有空格,但是您在模式中使用了\s*(0+空格)。此外,(?:,$)匹配或字符串结尾,因此您的模式允许后面有

我建议用

^[1-9]\d{8}(?:,[1-9]\d{8}){2,19}$

参见regex演示

    null
 类似资料:
  • 从这个API: 多行 启用多行模式。在多行模式下,表达式和分别在行终止符或输入序列结尾之后或之前匹配。默认情况下,这些表达式仅在整个输入序列的开头和结尾匹配。 多行模式也可以通过嵌入式标志表达式启用。 有人能举一个现实生活中的代码例子来说明使用和标准设置? 默认情况下,边界匹配器应该匹配行的开头,应该匹配行的结尾,正如本教程所解释的那样。 使用?

  • 如何实现这些模式?

  • 问题内容: 尝试编写使用RegEx验证项目值的JSON模式。 有一个名为 progBinaryName 的项目,该项目的值应预适应此RegEx字符串。 找不到任何实际解释JSON模式中RegEx用法的教程或示例。 任何帮助/信息将不胜感激! 感谢:D JSON架构 错误: 警告!更好地检查您的JSON。 实例不是必需的类型-http://json-schema.org/draft-03/hyper

  • 尝试编写一个JSON模式,该模式使用RegEx来验证项的值。 找不到任何实际解释在JSON模式中使用RegEx的教程或示例。 任何帮助/信息将非常感谢! 谢谢,D 模式是有效的JSON,但不是有效的模式。 验证结果:失败

  • 我正在尝试使用 php 正则表达式解析文本。我写了一个模式匹配,所有东西都符合要求。我不想要它。它必须在同一行上单独匹配目标。 模式: 目标数据字符串: 带有PREG_SET_ORDER标志的结果preg_match_all: 如果目标数据被放置在单独的行和相同的正则表达式模式执行结果;(我想要这些结果,但没有新行) 谢谢你的帮助。

  • 或者更好的方法是遍历它,为参数的每个索引获取TRUE或FALSE标志 我只知道如何使用matcher.find()进行循环,如果有任何帮助,我将不胜感激