这可以用正则表达式解决吗?

时间:2015-03-22 09:13:32

标签: php regex preg-match preg-match-all

我正在尝试从此字符串中的单词之间提取数字。

110.0046102.005699.0008103.0104....

我想在点(点/周期)之后提取4位数。

  • 110.0046
  • 102.0056
  • 99.0008
  • 103.0104

我想知道这是否可以使用正则表达式,或者我是否应该使用其他方式。

2 个答案:

答案 0 :(得分:5)

// replace the variable $numbers with your numbers
$numbers = "110.0046102.005699.0008103.0104";
preg_match_all("#\d+\.\d{4}#", $numbers, $matches);
var_dump($matches); // outputting all matches

https://regex101.com/r/oG1dK1/1 - >你可以在这里看到正则表达式。这些数字位于右侧的匹配信息框中。

答案 1 :(得分:0)

试试这个正则表达式:

(\d{1,}\.\d{4})

在这里演示:https://regex101.com/r/uJ1wU6/1