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

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: 如果目标数据被放置在单独的行和相同的正则表达式模式执行结果;(我想要这些结果,但没有新行) 谢谢你的帮助。

  • SO上有很多关于如何解析正则表达式模式并输出该模式所有可能匹配的问题。然而,出于某种原因,我能找到的每一个问题(1, 2, 3, 4, 5, 6, 7,可能更多)要么是针对Java,要么是针对各种C(只有一个针对JavaScript),我目前需要在PHP中完成这项工作。 我已经在Google上搜索到了我最喜欢的内容,但无论我做什么,Google给我的唯一东西就是指向preg\u match()的文