PHP截取HTML代码行中特定位置的值

 <div class="inner-box-wrapper">
          <div class="word-header">
                   <div class="w-and-c">
                           <span class="def-num">1</span>          
                                  <h1>a</h1>          
                                         <a class="play-pron" data-lang="cn" data-file="a0000001" data-dir="a" href="javascript:void(0)" title="12323">play <span class="p-box"> </span></a>       
                   </div>
          </div>
</div>

需要截取这个值:a0000001

需要这段代码之后: <a class="play-pron" data-lang="cn" data-file="

这段代码之前的值:" data-dir="a" href="javascript:void(0)" title="12323">play <span class="p-box">

注意:
data-file=在代码中不唯一

 <a class="play-pron" data-lang="cn" data-file="a0000001" data-dir="a" href="javascript:void(0)" title="12323">play <span class="p-box"> </span></a>  这段代码在整体代码中也不唯一,可能出现1次,也可能出现5次.

preg_match_all('/data-file="(.+?)"/', $s, $m);
print_r($m[1]);

用正则表达式
http://blog.csdn.net/w_j_w2010/article/details/50008803

附上针对你的正则

 (?<=data\-file\=\")[a-z]+\d+(?=\")

可以给出完整代码吗? 粘贴上去直接能运行的代码。

<?php
$s = <<


EOF;
$a = 'play ';
preg_match_all("#".preg_quote($a)."(.*)".preg_quote($b)."#", $s, $x);
echo "
";
print_r($x[1]);

上面代码运行后::

Array
(
)

注意:

data-file=在代码中不唯一,出现3-5次;

a

中间的A是一个动态变量 ;

data-dir="a" 这个a与上面的a是一个值;

title="12323" 此处最后一个是字母是a的值;

论坛给出的答案如上
http://bbs.csdn.net/topics/392089614?page=1#post-402059775