我有这样的字符串:
第001课:完成
在这种情况下,我只想获得数字部分001.
我试过这个:
$str = the_title();
preg_match_all('!\d+!', $str, $matches);
$number = implode(' ', $matches[0]);
echo $number;
Run Code Online (Sandbox Code Playgroud)
但是echo $number再次输出整个字符串:Lesson 001: Complete
怎么做到这一点?
您可以使用filter_var和清理字符串以仅包含整数.
$s = "Lesson 001: Complete";
echo filter_var($s, FILTER_SANITIZE_NUMBER_INT);
Run Code Online (Sandbox Code Playgroud)
您可以使用正则表达式仅匹配整数.
$s = "Lesson 001: Complete";
preg_match("/([0-9]+)/", $s, $matches);
echo $matches[1];
Run Code Online (Sandbox Code Playgroud)