Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在正则表达式中放置多个or条件_Javascript_Regex - Fatal编程技术网

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

Javascript 如何在正则表达式中放置多个or条件,javascript,regex,Javascript,Regex,下面是使用正则表达式时要涉及的情况: 案例1:3 x 4.5 mL红顶管 案例2:3个4mL红色顶部管 案例3:3-4mL红顶管 我创建了正则表达式以涵盖上述所有情况: 但它不适用于分隔符为“-”的“情况3” (\(([^)]+)\)(?:\s*x\s*|\s*|-)(\d*\.\d+|\d+)\s*ml\s([\w\s]+)[,\;\and\s]*) 输出 提前谢谢 您的正则表达式在上不匹配-因为第二个备选方案\s*是一个满足引擎要求的所有时间匹配。您的正则表达式也不需要所有这些替换: \

下面是使用正则表达式时要涉及的情况:

案例1:3 x 4.5 mL红顶管

案例2:3个4mL红色顶部管

案例3:3-4mL红顶管

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

但它不适用于分隔符为“-”的“情况3”

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


提前谢谢

您的正则表达式在上不匹配-因为第二个备选方案\s*是一个满足引擎要求的所有时间匹配。您的正则表达式也不需要所有这些替换:

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

非常感谢你。