Javascript-正则表达式表达问题

时间:2018-12-10 17:26:19

标签: javascript regex

我有一个应该经过验证的字符串,形式类似于"Readdata.v5"。我在代码中所做的就是根据.拆分字符串(我检查以确保字符串中恰好有一个.,以便处理所有其他情况)。我想对其进行验证,以便字符串的第一部分遵循短语的格式,后跟句点中的任何字符。第二部分应以char 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 :(得分:2)

您可以使用此

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

说明

  • ^-字符串开头的锚点。
  • (Create|Read|Update|Delete)-将匹配CreateReadUpdateDelete
  • [a-zA-Z]*-将匹配零个或多个时间的任何字符。
  • ``。- will match。`。
  • v\d+-将匹配v,后跟一个或多个数字。
  • $-字符串结尾。

Demo

答案 1 :(得分:2)

如果要验证是否存在“。”。在链中,您可以执行以下操作:

var stringToValidate = 'jon.foo';

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

条件被评估为是或否