允许在 ng 模式中使用特殊字符



我试图在一个字段中允许一些特殊字符,这些字符是重音元音(áéíóúÁEÍÍÓÚ(,ÑñÇç允许法语和西班牙语名称(即努诺,何塞,弗朗索瓦(。我的代码是这样的:

ng-pattern="/^[a-zA-Z_-&`#. ]*$'áéíóúÁEÍÍÓÚÑñÇç"

我也试过这个

ng-pattern="/^[a-zA-Z_-&`´#. ]*$'áéíóúÁÉÍÓÚÑñÇç]/"

但是当我在服务器中部署它并检查字段时,它会将这些字符更改为未知字符,如下所示:

<input type="text" name="firstName" class="form-control ng-pristine ng-invalid ng-not-empty ng-valid-required ng-invalid-pattern ng-touched" ng-required="!userDetails.user.firstname" ng-pattern="/^[a-zA-Z_-&amp;`�'#. ]*$'��������������/" ng-model="userDetails.user.firstname" aria-invalid="true">

如何使编译器识别我需要的字符?

谢谢

>/^[a-zA-Z_\-&''#\. áéíóúÁÉÍÓÚÑñÇç]*$/应该适用于您的情况 - 您不需要在不需要转义的字符前面放置转义文字 (\(。

正如@sln评论的那样,它需要 unicode 字符,它适用于

^[-a-zA-Z_&`´#. u0027u00C1u00C7u00C9u00CDu00D1u00D3u00DAu00E1u00E7‌​u00E9u00EDu00F1u‌​00F3u00FA]*$

如果 html 的字符集/编码(可以在浏览器或 Web 服务器中设置(设置为 UTF8,则不需要上述 unicode 转换。

最新更新