Javascript - проблемы с выражением регулярного выражения - PullRequest
0 голосов
/ 10 декабря 2018

У меня есть строка, которая должна быть проверена в форме чего-то вроде "Readdata.v5".Что я делаю в своем коде, так это разбиваю строку на основе . (я проверяю, чтобы убедиться, что в строке ровно один ., поэтому все остальные случаи обрабатываются).Я хочу проверить это так, чтобы первая часть строки соответствовала формату фразы, за которым следовал любой символ в точку.Вторая часть должна начинаться с символа v, а затем следовать за любым номером.Это регулярное выражение, которое у меня есть:

console.log("first field validation: " + splitArray[0].match(/^\"(Create|Read|Update|Delete)[a-zA-Z]*.$/));
console.log("Second field validation: " + splitArray[1].match(/^.vd+\"$/));

Однако, похоже, что мое регулярное выражение не работает.Я сделал ошибку?Значения в массиве являются правильными и разделяют значения правильно (кавычки являются частью строки).

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Если вы хотите подтвердить, что есть «.»в цепочке вы можете сделать это:

var stringToValidate = 'jon.foo';

if(!!stringToValidate.indexOf('.')){
 console.log('true')
}

условное значение оценивается как истинное или ложное

0 голосов
/ 10 декабря 2018

Вы можете использовать это

^"(Create|Read|Update|Delete)[a-zA-Z]*\.v\d+"$

Объяснение

  • ^ - привязка к началу строки.
  • (Create|Read|Update|Delete) - будет соответствовать Create или Read или Update или Delete.
  • [a-zA-Z]* - будет соответствовать любому символу ноль или более раз.
  • ``. - will match .`.
  • v\d+ - будет соответствовать v с одной или несколькими цифрами.
  • $ - конец строки.

Демо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...