Нежелательный результат использования ng-pattern (Angular.JS), с символами юникода
Я использую нг-шаблон с полем ввода, которое должно принимать только ивритские символы.
Я выяснил, что такое юникодные числа на иврите.
Это мой шаблон:
$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 действительно тот диапазон, который мне нужен в моем паттерне. Так в чем моя проблема здесь?
1 ответ
Попробуй это:
$scope.onlyHebrewPattern = /^[\u05D0-\u05F3]+$/g;
Ваш соответствует любой строке с еврейским символом.