ng-pattern 只允许字母、数字、点、下划线和破折号

ng-pattern allow only letters, numbers, dot, underscore and dash

如何允许仅使用 ng-pattern 输入:lettersnumbersdotunderscoredash ( . _ -)?

已经尝试过以下的

更新:

$scope.validationPattern = '/^[a-zA-Z\d\-\_]+$/';

<input ng-model="model" type="text" ng-pattern="{{validationPattern}}" />

根据您的要求,您需要在图案中加一个点:

$scope.regex = '^[a-zA-Z0-9._-]+$';

并将 ng-trim="false" 添加到 <input> 标签以禁止 leading/trailing 个空格。

this plunkr

[a-zA-Z0-9][A-Za-z0-9._-]*

这个有效

/^[a-zA-Z0-9 ._-]+$/

如果此正则表达式不直接适合 ng-pattern,则它似乎很适合您进行必要的调整,例如。

在控制器中添加

$scope.pattern = /^[a-zA-Z0-9 ._-]+$/;

现在 html 使用 ng-pattern="pattern"

使用此测试:http://www.regextester.com/

接受数字、字母和三个符号(.-_)