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

时间:2018-03-12 10:13:43

标签: javascript regex

以下是使用正则表达式的案例:

案例1:(3)x 4.5 mL Red Top Tubes。

案例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 个答案:

答案 0 :(得分:1)

你的正则表达式在-上没有匹配,因为第二个替代\s*是一个满足引擎的所有时间匹配。您的正则表达式不需要所有这些替换:

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

Live demo