我有以下正则表达式:
/Name:\s+(.*)\s+Company:\s+(.*)\s+Email:\s+(.*)\s+Phone:\s+(.*)\s+Inquiry:\s+(.*)\s+Comments:\s+(.*)/g
我正在针对以下匹配项进行测试:
Name: London Brown Company: Amazon.com Email: london@example.com Phone: 2065550000 Inquiry: Technical Comments: Example comment
我想修改此RegExp以忽略“查询:技术”是否存在于字符串中,因为此数据有时存在而有时不存在。这样,以下内容也将被接受:
Name: London Brown Company: Amazon.com Email: london@example.com Phone: 2065550000 Comments: Example comment
由于这是一个单一的脚本,所以我无法控制源数据。
答案 0 :(得分:2)
您可以使用可选的非捕获组(?:Inquiry:\s+(.*)\s+)?
例如
Name:\s+(.*)\s+Company:\s+(.*)\s+Email:\s+(.*)\s+Phone:\s+(.*)\s+(?:Inquiry:\s+(.*)\s+)?Comments:\s+(.*)