Мой шаблон регулярного выражения должен начинаться с /* и заканчиваться */; между этим он может содержать все алфавиты, цифры, специальные символы - ноль или более раз.
Для этого я сделал следующее регулярное выражение:
[/*][a-zA-Z0-9~@#\^\$&\*\(\)-_\+=\[\]\{\}\|\\,\.\?\s]*[*/;]
Но это выражение не показывает ошибку для таких шаблонов, как:
- /*
- / * sdfsdff
- /* sdfsfeff *
- /* fefef3323 */
Что неправильно. Он должен начинаться с /* и заканчиваться */; любой ценой.
Ниже приведен угловой код для тестирования этого шаблона. Пожалуйста, помогите кто-нибудь!
КОД:
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js" ></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular-messages.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<form name="form1" novalidate>
{{form1.age.$error}}
<input type="text" name="age" ng-model="myAge" ng-pattern="/^[/*][a-zA-Z0-9~@#\^\$&\*\(\)-_\+=\[\]\{\}\|\\,\.\?\s]*[*/;]$/" />
<div ng-messages="form1.age.$error" >
<span ng-message="pattern">This field has wrong pattern.</span>
</div>
</form>
<script>
//module declaration
var app = angular.module("myApp",['ngMessages']);
//controller declaration
app.controller('myCtrl',function($scope){
//code goes here ...
});
</script>
</body>
</html>
Ссылка:
Регулярное выражение включает и исключает специальные символы