5

、、、およびng-patternのみを使用した入力をどのように許可しますか?lettersnumbersdotunderscoredash ( . _ -)

すでに次のものを試しました

アップデート:

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

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

3 に答える 3

13

要件から判断すると、パターンにドットを追加する必要があります。

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

先頭/末尾のスペースを許可しないようにタグに追加ng-trim="false"します。<input>

このplunkrを参照してください

于 2016-08-24T11:36:17.560 に答える
4
[a-zA-Z0-9][A-Za-z0-9._-]*

これは動作します

于 2016-08-24T11:39:51.473 に答える
2
/^[a-zA-Z0-9 ._-]+$/

この正規表現は、ng-pattern に直接適合しない場合など、必要な調整を行う場合に十分に適しているようです。

コントローラーに追加

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

現在htmlで使用されていますng-pattern="pattern"

これを使用してテスト: http://www.regextester.com/

数字、アルファベット、および 3 つの記号 (.-_) を受け入れます

于 2016-08-24T11:41:42.703 に答える