下面是使用正则表达式处理的情况:
案例1: (3) x 4.5 mL红顶管。
病例2: (3) 4mL红顶管。
病例3: (3)- 4mL红顶管。
我创建了正则表达式,以涵盖上述所有情况:
但是它不适用于'Case 3‘,其中分隔符是'-’。
(\(([^)]+)\)(?:\s*x\s*|\s*|-)(\d*\.\d+|\d+)\s*ml\s([\w\s]+)[,\;\and\s]*)输出

提前谢谢!!
发布于 2018-03-12 10:28:38
您的regex在-上不匹配,因为第二种替代\s*是一种满足引擎的全时匹配。您的正则表达式也不需要所有这些更改:
\(([^)]+)\)\s*[x-]?\s*(\d+(?:\.\d+)?)\s*m[lL]\b([\w\s]+)https://stackoverflow.com/questions/49232692
复制相似问题