使用正则表达式验证 Yii 中的十进制数字
我已经尝试过
array('Number', 'match', 'pattern'=>'(^\d*\.?\d*[0-9]+\d*$)|(^[0-9]+\d*\.\d*$)'),
,因为我只想允许格式为 1.00、4.34、234.98 的正值,
但我收到此错误
preg_match(): Unknown modifier '|'
I have tried
array('Number', 'match', 'pattern'=>'(^\d*\.?\d*[0-9]+\d*$)|(^[0-9]+\d*\.\d*$)'),
as I want to only allow positive values with the format of 1.00, 4.34, 234.98
I get this error though
preg_match(): Unknown modifier '|'
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您的模式应该用斜杠括起来,即:
Your pattern should be enclosed by slashes, ie:
如果您使用 number_format 打印数字,您可以使用:
[['formfield'], 'number', 'numberPattern' => '/(^\d+\,\d+\.\d+$)|(^\d+\.\d+$)/'],
适用于 1,234.56 或 234,56
If you are using number_format to print your numbers you could use:
[['formfield'], 'number', 'numberPattern' => '/(^\d+\,\d+\.\d+$)|(^\d+\.\d+$)/'],
It works with 1,234.56 or 234,56