Gum*_*mbo 12
试试这个:
(?:0|[1-9]\d*)\s*(?:da|[yzafpn?mcdhkMGTPEZY])?m
Run Code Online (Sandbox Code Playgroud)
由于您没有准确指定您想要的内容,因此我使用您的示例来得出您想要找到一个整数值,后跟可选的空格,后跟 cm、m 或 km 的单位说明符。所以 - 这是最简单的例子。
/(\d+)\s*(m|cm|km)/
Run Code Online (Sandbox Code Playgroud)
第一个括号捕获数字,然后它会跳过 0 个空格字符,然后在第二组括号中捕获所需的单位。
正如您在其他答案中所看到的,您可以超越此范围来获取十进制值,并且还可以捕获更多数量的 SI 单位前缀。