允许ng-pattern中的特殊字符

时间:2017-07-26 15:02:43

标签: html angularjs regex special-characters

我试图在字段中允许一些特殊字符,这些字符是重音元音(áéíóúÁEÍÍÓÚ),ÑñÇç允许法语和西班牙语名称(即Nuño,José,François)。我的代码是这样的:

<div *ngFor="let hobby in Person.Hobbies">
  <img *ngIf="hobby.IsActive"  [src]='./images/hobby.png'>
</div>

我也试过这个

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

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

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

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

由于

3 个答案:

答案 0 :(得分:0)

/ ^ [A-ZA-Z _ \ - &安培;`'#\。 áéíóúÁÉÍÓÚÑñÇç] * $ /应该适用于你的情况 - 你不需要在角色前面放置一个逃避文字(\),不需要逃避。

答案 1 :(得分:0)

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

^[-a-zA-Z_&`´#. \u0027\u00C1\u00C7\u00C9\u00CD\u00D1\u00D3\u00DA\u00E1\u00E7‌​\u00E9\u00ED\u00F1\u‌​00F3\u00FA]*$

答案 2 :(得分:0)

如果html的charset / encoding(可在浏览器中设置,或在Web服务器中)设置为UTF8,则不需要上面的unicode转换。