从文本文件中提取多次出现的Substring

时间:2013-12-08 11:54:52

标签: php regex

我有一个文本文件,其中包含多个子字符串 - pin =“*****”,其中*等于数字。

封闭引号内的引脚编号可以是N长度。

我想要做的是提取行pin="*****",或者甚至更好地提取其中的数字,并将其添加到数组中以供稍后处理。

文本文件的样子就是这样的

[123456]
mystring="srthjkgnyjh"
pin="9898
anotherstring="jghksdfghjkdfg6788678345hjkfsd"

[654321]
mystring="hksfkhjsjl"
pin="4343434"
anotherstring="kdgig89794578945789jkhflsf7865"

等。

非常感谢您的想法

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用:

preg_match_all('~(?<=\bpin=")[0-9]+(?=")~', $str, $matches);
$result = $matches[0];

(?<=..)(?=..)是一个后视和前瞻。您可以找到有关它的更多信息here