繁体   English   中英

PHP 预匹配 - 具有浮点值的正则表达式

[英]PHP preg match - regular expression with float value

有这个字符串:

$var = "30.5x120.8 (test desc here)";

我需要用正则表达式输出 30.5 和 120.8 .. 有什么帮助吗?? 谢谢

preg_match_all('~\d+(?:\.\d+)?~', $string, $matches);
var_dump($matches[0]);
$var = "30x120 (test desc here)";

preg_match_all('/^(\d+)x(\d+)/', $var, $matches);

var_dump($matches)

爱迪生

Output

array(3) {
  [0]=>
  array(1) {
    [0]=>
    string(6) "30x120"
  }
  [1]=>
  array(1) {
    [0]=>
    string(2) "30"
  }
  [2]=>
  array(1) {
    [0]=>
    string(3) "120"
  }
}

更新

也适用于 17.5x17.5?

这是一个将...

/^(\d+(?:\.\d+)?)x(\d+(?:\.\d+)?)/

爱迪生

preg_match('/^(\d+)x(\d+)/', '30x120 (test desc here)', $result);

并使用$result[1]$result[2]

以下应该可以解决问题: /^(\d+)x(\d+)/

运行代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM