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
Regex 为什么角度模式验证不起作用?_Regex_Angular_Angular8 - Fatal编程技术网

Regex 为什么角度模式验证不起作用?

Regex 为什么角度模式验证不起作用?,regex,angular,angular8,Regex,Angular,Angular8,我有一个验证规则: latitude: [null, [Validators.pattern("^\d+\.+\d+$")]], 当我输入值时:40.333 它验证为错误,为什么 HTML是: <input type="text" [ngClass]="{'has-error':form.get('latitude').invalid}" formControlName="latitude" maxlength="20" /&g

我有一个验证规则:

latitude: [null, [Validators.pattern("^\d+\.+\d+$")]],
当我输入值时:40.333

它验证为错误,为什么

HTML是:

<input
      type="text"
      [ngClass]="{'has-error':form.get('latitude').invalid}"
      formControlName="latitude"
      maxlength="20"
      />

由于要传递字符串以形成正则表达式(而不是正则表达式本身),因此需要对其进行双重转义

试一试


+
不是必需的,因为纬度是十进制值
应该只出现一次。

您检查过您的RegExp吗?当然,它在RegExp中工作,请查看我的更新问题。请发布相关的HTML代码。我已发布,请检查为什么在
之后有
+
,您是否愿意允许多个
?您应该这样做
^\d+\.\d+$
latitude: [null, [Validators.pattern("^\\d+\\.\\d+$")]],