ヘブライ文字のみを受け入れる入力フィールドを持つ ng-pattern を使用しています。
ユニコード番号のヘブライ文字が何であるかを調べました。
これは私のパターンです:
$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 が私のパターンで必要な範囲であると確信しています。ここで私の問題は何ですか?