Php 如何仅从字符串中获取数字?
我有这样的字符串: 第001课:完成 我只想得到数字部分,在本例中是Php 如何仅从字符串中获取数字?,php,Php,我有这样的字符串: 第001课:完成 我只想得到数字部分,在本例中是001 我试过这个: $str = the_title(); preg_match_all('!\d+!', $str, $matches); $number = implode(' ', $matches[0]); echo $number; 但是echo$number再次输出整个字符串:Lesson 001:Complete 如何正确执行此操作?filter\u var 您可以使用并清理字符串,使其仅包含整
001
我试过这个:
$str = the_title();
preg_match_all('!\d+!', $str, $matches);
$number = implode(' ', $matches[0]);
echo $number;
但是echo$number
再次输出整个字符串:Lesson 001:Complete
如何正确执行此操作?filter\u var
您可以使用并清理字符串,使其仅包含整数
$s = "Lesson 001: Complete";
echo filter_var($s, FILTER_SANITIZE_NUMBER_INT);
$s = "Lesson 001: Complete";
preg_match("/([0-9]+)/", $s, $matches);
echo $matches[1];
预赛
可以使用正则表达式仅匹配整数
$s = "Lesson 001: Complete";
echo filter_var($s, FILTER_SANITIZE_NUMBER_INT);
$s = "Lesson 001: Complete";
preg_match("/([0-9]+)/", $s, $matches);
echo $matches[1];
您可以尝试使用
/\d+/
$str = the_title();
preg_match_all('/\d+/', $str, $matches);
echo $matches[0];
你上面的查询可以正常工作,它输出“001”,没有问题。是的,它工作得很好,那么你有什么问题?正如我对@ʰ所说的ᵈˑ由于某种原因,如果我做了
$s=“第001课:完成”代码>但不是在我做$s=the_title()时代码>即使它们的输出相同。不知道为什么。@alexchenco让我猜猜怎么做:var\u dump(the_title())你会得到NULL
,对吗?你知道为什么吗?解决方案使用:获取标题()(我得100分:)?)因为某种原因,如果我这样做$s=“第001课:完成”,那么它会起作用代码>但不是在我做$s=the_title()时代码>即使它们的输出相同。奇怪。@alexchenco看(Rizier123得到100分)