Проблема регулярных выражений в jQuery - PullRequest
0 голосов
/ 28 июля 2010

Я использую одну библиотеку Jquery, которая принимает регулярное выражение в формате json в файле и пытается проверить его из файла

"Studentnumber":{
  regex: "/^[-/@#&$*\w\s]+$/",
  alertText: "* Invalid Student Number"
}, // ...

Я могу использовать это в своем текстовом поле следующим образом

<input type="text" class="validate[required,custom[Studentnumber]] Textbox">

Раньше у меня было регулярное выражение JavaScript для поля, например:

<input type="text" validate="regex" regex='^[-/@#&$*\w\s]+$' name="sno" id="sno">

Когда я использую то же регулярное выражение, которое используется в JavaScript для jquery. Это не проверяет как то же самое в JavaScript и дает неуместные результаты. В чем разница между этими двумя?

Ответы [ 2 ]

1 голос
/ 28 июля 2010

Поскольку вы используете возвраты в строке и хотите их впоследствии, вам нужно их экранировать, например:

"Studentnumber":{
  regex: "/^[-/@#&$*\\w\\s]+$/",
  alertText: "* Invalid Student Number"
}

Хотя я не уверен на 100%, посмотрев на это, это может быть 4 обратных слеша вместо 2, но аргумент , почему ускользает от меня в данный момент.

0 голосов
/ 28 июля 2010

Это зависит от того, как плагин работает с регулярным выражением, попробуйте удалить кавычки или создать новый экземпляр:

"regex": /^[-/@#&$*\w\s]+$/

или

"regex": new RegExp("/^[-/@#&$*\w\s]+$/")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...