Regex 需要一个reg ex来匹配以毫米为单位的长度

Regex 需要一个reg ex来匹配以毫米为单位的长度,regex,preg-match,Regex,Preg Match,Im使用PHP preg_match()方法。我在匹配mm长度的正则表达式时遇到问题。数值长度可以是一个浮点数…下面是我正在处理的一些数据的EXMAPLE 1.0毫米 25.5毫米 3毫米 3毫米 3.3毫米 因此,基本上,任何整数或浮点数都是以“mm”开头,中间有或没有空格 谢谢 试试“/(\d+(?:\。\d+)\s*mm/”你会得到1美元的数字 说明: (开始捕获组 \d+一个或多个数字 (?:开始非捕获组 \.普通点 \d+一个或多个数字 )结束非捕获组 ?非捕获组(“.”+位)可能不

Im使用PHP preg_match()方法。我在匹配mm长度的正则表达式时遇到问题。数值长度可以是一个浮点数…下面是我正在处理的一些数据的EXMAPLE

1.0毫米

25.5毫米

3毫米

3毫米

3.3毫米

因此,基本上,任何整数或浮点数都是以“mm”开头,中间有或没有空格

谢谢

试试
“/(\d+(?:\。\d+)\s*mm/”
你会得到1美元的数字

说明:

  • 开始捕获组
  • \d+
    一个或多个数字
  • (?:
    开始非捕获组
  • \.
    普通点
  • \d+
    一个或多个数字
  • 结束非捕获组
  • 非捕获组(“.”+位)可能不存在
  • 结束捕获组
  • \s*
    零个或多个空格(或制表符等)
  • mm
    文字“mm”

您需要正则表达式吗?如果您在“123.122mm”上使用类似于floatval的内容,它将为您提供123.122数字,并忽略文本。

@streetpc-就快到了!但是这个reg-ex还返回布尔值true,如下所示:;1.2m(只需在“mm”上严格返回true)是否可以修改此注册表项以实现此目的?注册表项包含一个略带双精度的“m”,因此它应仅与“mm”匹配。如果没有,你能把代码放进去吗@FM解决了这个问题,谢谢