【发布时间】:2014-06-14 11:28:50
【问题描述】:
$source="<p><b>Lal, Vaninm</b></p>
<p><b>Vice President &</b></p>
<p><b>General Manager</b></p>
<p>Company 1 Inc.</p>
<p>PO Box 123456</p>
<p>salt Lake1, 00111-3333</p>
<p>111-111-111 / F: 111-111-111</p>
<p>info1@site1.com</p>
<p><b>Andrus, Reed </b></p>
<p><b>Manager</b></p>
<p>Company 2 Inc.</p>
<p>Monada, Suite 222</p>
<p>J , Lousiana 2222</p>
<p>222-222-222 / F: 222-222-222</p>
<p>info2@site2.com</p>
<p><b>Sharma, John L.</b></p>
<p><b>Senior Property Manager</b></p>
<p>Company 3 Ltd.</p>
<p>PO Box 3333</p>
<p>Grand Cinema, Layman Islands</p>
<p>FGB 333</p>
<p>333-333-333</p>
<p>info3@site3.com</p>
<p><b>Lucky, Philip S</b></p>
<p>Life Member</p>
<p>Company 4 Inc.</p>
<p>Battelsville, Oklahoma 74000</p>
<p>444-444-444</p>
<p><b>Berry, Richard B, RPA, CPM</b></p>";
$records = preg_split ("@\<p\>\<b\>(.*?)(\<p\>(.*)\</p\>\<p\>\<b\>)@s", $source);
var_dump($records);
数组必须包含四个记录。 标签内包含的数据是没有意义的。 我是正则表达式的新手。我试过如上。请为此建议正则表达式。提前致谢。
我认为<p><b> ....<p>...</p><p><b> 标识了一条记录。但我无法做出所需的表达。
【问题讨论】:
-
如果你需要一个正则表达式为什么不写一个?
-
如果你使用标记,不要使用正则表达式,使用DOM
-
嗨,马克,我为此尝试了简单的 html dom。但是html文件太大了。
-
@user3740168 你的文件有多大?
-
文件大小为 35 mb。
标签: php regex for-loop records