代码之家  ›  专栏  ›  技术社区  ›  DHARMINDER

如何在正则表达式中放置多个or条件

  •  0
  • DHARMINDER  · 技术社区  · 7 年前

    下面是使用正则表达式要涵盖的情况:

    案例1: (3) x 4.5毫升红色顶部试管。

    案例2: (3) 4mL红色顶部管。

    案例3: (3) -4mL红色顶部管。

    我创建了正则表达式来涵盖上述所有情况:

    但它不适用于' 案例3 '其中分隔符为'-'

    (\(([^)]+)\)(?:\s*x\s*|\s*|-)(\d*\.\d+|\d+)\s*ml\s([\w\s]+)[,\;\and\s]*)
    

    输出 enter image description here

    提前谢谢!!

    1 回复  |  直到 7 年前
        1
  •  1
  •   revo shanwije    7 年前

    您的正则表达式在上不匹配 - 自第二个备选方案以来 \s* 这是一场让引擎满意的比赛。您的正则表达式也不需要所有这些替换:

    \(([^)]+)\)\s*[x-]?\s*(\d+(?:\.\d+)?)\s*m[lL]\b([\w\s]+)
    

    Live demo