3

我正在使用一个 ng 模式,它的输入字段应该只接受希伯来语字符。

我已经找出了希伯来字符的 unicode 数字。

这是我的模式:

$scope.onlyHebrewPattern = /[\u05D0-\u05F3]+/g;

我的表单输入:

<input tabindex=1 type="text" ng-disabled="disableButtons" name="firstname" ng-minlength="2" ng-maxlength="15" ng-model="register.firstName" placeholder="first name" ng-pattern="onlyHebrewPattern" required title="please enter your name">

现在对于大多数输入,该模式将起作用,并且不会使用错误结果填充 $scope.firstname,例如:“abcd”。

但是有一些输入,比如:“שדas”,由于某种原因,它被模式所接受。

我相信问题取决于模式定义。一定有问题,但我确信 u05D0-u05F3 确实是我在模式中需要的范围。那么我的问题是什么?

4

1 回答 1

4

尝试这个:

$scope.onlyHebrewPattern = /^[\u05D0-\u05F3]+$/g;

你的匹配任何带有希伯来字符的字符串。

于 2013-10-15T23:57:34.773 回答