此问题已经有重复的问题(Duplicate question)
我无法在此处创建评论,所以我要创建一个新评论。
提供的解决方案是非常有解释性的,但是我仍然无法清楚地了解preg_match_all()
。
我尝试了以下代码
preg_match_all("/#+([a-zA-Z0-9_]+)/i","#test this is #php test",$matches);
var_dump($matches)
结果是
array(2) {
[0]=>
array(2) {
[0]=>
string(5) "#test"
[1]=>
string(4) "#php"
}
[1]=>
array(2) {
[0]=>
string(4) "test"
[1]=>
string(3) "php"
}
}
我的理解是,根据我的代码,正则表达式只会选择以“#”开头的字符串。
但是结果是,数组包含带'#'且不带'#'的字符串。
请帮助我解决这个问题。我想念什么。