在HTML标记之间提取文字并计数

| 可以这么说,我写了一篇带有很多标签(例如
[code]this is a code[/code]
)的文章,我会知道文章中有多少个
code
标签以及里面的文字是什么。 我尝试了
preg_matches
preg_replaces
,但到目前为止没有任何效果。合适的方法是什么?     
已邀请:
$pattern = \'/\\[code\\](.*?)\\[\\/code\\]/s\';

preg_match_all($pattern, $code, $matches);

echo count($matches).\"\\n\";

var_dump($matches);
    
这对您应该很有趣:
/\\[code\\]([^]]+)\\[\\/code\\]/ 
您需要使用match_all来获取所有值。 顺便说一句,这样的代码一定存在一些缺陷:
[code]blabla [code]bleh bleh[/code][/code]
由于正则表达式无法解析多个深度级别。至少当深度未知时。 编辑
/\\[code\\](.*)\\[\\/code\\]/
也可能有用,但不会卡住内部块。第一个只匹配内部的。     

要回复问题请先登录注册