正则表达式星号不按指定方式工作

时间:2013-11-12 05:57:11

标签: regex

以下正则表达式不允许使用数字和句点。 [^\d+\.?\d*] 但我们给12** asd测试字符串,结果错误,它匹配12**

它如何与星号相匹配。

1 个答案:

答案 0 :(得分:1)

  

以下正则表达式不允许使用数字和   周期。[^ \ d +。?\ d *]

不,它没有做你想要的。

  

结果错误,它匹配12 **

我无法重现。事实上,它匹配除12**

之外的字符串

以下是regex101.com的解释。把所有这些放在一起没有多大意义。

/[^\d+.?\d*]/
Negated char class [^\d+.?\d*] matches any character except:
   \d Digit [0-9]
   +.? One of the following characters +.?
   \d Digit [0-9]
   * The character *

注意: *?+[]内没有特殊含义,所有这些都被视为字面意思字符


可能你正在寻找

[0-9.]+