繁体   English   中英

在字符串正则表达式中查找模式

[英]Find pattern inside string regex

我需要查找以下字符串中是否存在某种模式

I123456-sxzzukerrdco86rg-CMafApp-java

D977058-sxzzukerrdco86rg-CMafApp-java

我需要找到以下内容

  1. 如果字符串以I977058-
  2. I可以也D喜欢D977058-
  3. 该字符串应该在字符串的开头找到,例如I977058-sxzzukerrdco86rg-CMafApp-java,不能在字符串的任何其他部分…
  4. zzzz-sxzzukerrdco86rg-CMafApp-java无效
  5. 11111-sxzzukerrdco86rg-CMafApp-java无效

我尝试以下无效

我不知道如何提供以D或I为起点的模式

var res = str.match(/I-/g);

不能完全清楚您要匹配的内容,但是以下模式将匹配任何以“ D”或“ I”开头的字符串-^字符表示字符串的开头。

var res = str.match(/^[ID]/);

您可以对照两个字母,想要的数字和破折号。

 console.log([ 'I123456-sxzzukerrdco86rg-CMafApp-java', 'D977058-sxzzukerrdco86rg-CMafApp-java', 'foo' ].map(/./.test.bind(/^[DI]\\d{6}-/))); 

试试这样的事情:

/^[ID]/

'^'表示这是单词的开头。 [ID] =>在{I,D}组中获取一个字符

您可以使用此网站来训练和理解正则表达式: https ://regex101.com/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM