Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 改进正则表达式以匹配之后的任何内容_Jquery_Regex - Fatal编程技术网

Jquery 改进正则表达式以匹配之后的任何内容

Jquery 改进正则表达式以匹配之后的任何内容,jquery,regex,Jquery,Regex,我试图匹配可能出现在普通条例中的数字 例如: 我有一个匹配数字和多个点的正则表达式: ^[.?\d]+$ 但是,我需要允许后面出现的所有文本。此外,对于像1这样的顺序列表,这会返回误报。2.3.4. 有没有一种方法可以匹配开头至少有3个数字的任何内容以及后面的任何文本 以下是我希望(不)匹配的示例: ^(\d+。?)+\s(.*)$ 第一组是一对或多对(最后一个点可选),第二组与其他组匹配 ^\d{3}\..+$ (提供所有样本输入的测试) 要点: ^–输入字符串的开头 \d{3}\.–

我试图匹配可能出现在普通条例中的数字 例如:

我有一个匹配数字和多个点的正则表达式:

^[.?\d]+$
但是,我需要允许后面出现的所有文本。此外,对于像
1这样的顺序列表,这会返回误报。2.3.4.

有没有一种方法可以匹配开头至少有3个数字的任何内容以及后面的任何文本

以下是我希望(不)匹配的示例:

^(\d+。?)+\s(.*)$

第一组是一对或多对(最后一个点可选),第二组与其他组匹配

^\d{3}\..+$

(提供所有样本输入的测试)

要点:

  • ^
    –输入字符串的开头
  • \d{3}\.
    –三位数字后跟一个句点
  • +
    –“之后的任何文本”
  • $
    –输入字符串的结尾

请注意,在原始模式中,
^[.?\d]+$
将字面上匹配
将字面上匹配
,因为这些字符出现在字符类中(以
[
开头,以
]
结尾)–这不是我所期望的。

效果很好,也非常感谢您的演示,当时间限制允许时,我会将此标记为答案。我刚刚意识到此项不符合101.2门净空。对不起,我应该更清楚,它必须是3个数字,开头带有一个点,后面的所有文本都是optional@johnny5:我编辑了我的答案,以与您提供的最新解释保持一致。谢谢您的答案回答!是的,一般的2)数字,3)文字。如果您只需要文本,可以将组更改为非捕获组(?:\d+。?)对于第一个组,您认为这是最好的,但它在开始时与3个数字不匹配。是否要捕获三个数字(1.1.1)加上文本?这将需要两个捕获组。是否要将匹配的数字限制为仅三个?你能举一个理想匹配的例子吗?你所说的顺序列表返回误报是什么意思?我不希望它匹配像1这样的东西。2.3.4.
101.1              => true
101                => false
1.                 => false
101.1.1 Clearances => true
^\d{3}\..+$