使用 preg_match 的简单正则表达式

发布于 2024-12-04 14:37:57 字数 309 浏览 0 评论 0原文

我正在尝试检索该单词和分号之后的三位数。

REF: 222

我下面的代码可以工作,但效果不好,因为它从 $decoded_message 字符串中获取 3 位数字。

想要的只是在 REF: ### 一词之后获取三位数

if (preg_match("([0-9]{3})", $decoded_message, $matches)) {
  echo "Match was found <br />";
  echo "ref = ".$matches[0];

}

我真正

I am trying to retrieve the three digit number after this word and semi colon.

REF: 222

The code i have below works but its not good because its getting 3digit numbers from the $decoded_message string.

What i really want is only to grab three digit number after the word REF: ###

if (preg_match("([0-9]{3})", $decoded_message, $matches)) {
  echo "Match was found <br />";
  echo "ref = ".$matches[0];

}

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

活泼老夫 2024-12-11 14:37:57

您可以搜索 REF: [0-9]{3},然后删除 REF: 部分。

if (preg_match("/REF: [0-9]{3}/", $decoded_message, $matches)) {
  echo "Match was found <br />";
  echo "ref = ".substr( $matches[0], 5 );
}

You can search for REF: [0-9]{3} and then remove the REF: part.

if (preg_match("/REF: [0-9]{3}/", $decoded_message, $matches)) {
  echo "Match was found <br />";
  echo "ref = ".substr( $matches[0], 5 );
}
早茶月光 2024-12-11 14:37:57

您可以简单地使用

$output = preg_replace("/REF: /","", "REF: 222");

Afterwards 替换“REF:”,$output 中应仅包含数字。

You may simply replace "REF: " by using

$output = preg_replace("/REF: /","", "REF: 222");

Afterwards, only the number should be contained in $output.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文