我想使用 php 从字符串中提取标签和数据。字符串如下所示:
Label: Info;
Label1: Info1;
Label2: Info2;
Label3: Info3;
..............
我的解决方案是对每个 label 使用 strpos ,将其保留在一个变量中,并为该标签提取数据,这太慢了。你能建议我另一种方法吗?
我当然不是 REGEX 专家,但这是我想出的有效解决方案。
$ptn = "/(Label[0-9]?):?.?(.+);/";
$str = "Label: Info;
Label1: Info1;
Label2: Info2;
Label3: Info3;";
preg_match_all($ptn, $str, $matches, PREG_SET_ORDER);
现在使用print_r
on$matches
返回以下内容:
Array
(
[0] => Array
(
[0] => Label: Info;
[1] => Label
[2] => Info
)
[1] => Array
(
[0] => Label1: Info1;
[1] => Label1
[2] => Info1
)
[2] => Array
(
[0] => Label2: Info2;
[1] => Label2
[2] => Info2
)
[3] => Array
(
[0] => Label3: Info3;
[1] => Label3
[2] => Info3
)
)