求一个Php 提取表格内容的正则表达式
字符串可能如下:
$s1 = '这里是描述字符( )
';
$s2= ’这里是描述字符( )
|
0
|
';
希望能把table表格前的字符 :这里是描述字符( )’ 和 td 中间的字符串提取出来
'BBBBB '、'AAAAA'、'
'、'
0'
表格td中间内容可能比较杂,尽量考虑各种情况。
不知道描述得清楚么? 各位正则达人请支招!
------解决思路----------------------$s1 = '这里是描述字符( )<table name="optionsTable" cellpadding="0" cellspacing="0" width="100%"><tr><td width="25%">AAAAA </td><td width="25%"> BBBBB </td></tr></table>';<br />$s2= '这里是描述字符( )<table name="optionsTable" cellpadding="0" cellspacing="0" width="100%"><tr><td width="50%"><img src="2061.png" style="max-width:90%" / alt="Php 提取表格内容的正则表达式" > </td><td width="50%"> <sub>0</sub></td></tr></table>';<br />//匹配table前面的内容<br />preg_match_all('/(.+?)<table[^>]+?>/i',$s1,$p1);<br />echo "<pre class="brush:php;toolbar:false">";<br />print_r($p1[1]);<br />echo "
로그인 후 복사
";
//匹配td里面的内容
preg_match_all('/
]+?>(.+?)<\/td>/i',$s2,$m2); echo "";<br />print_r($m2[1]);<br />echo " 로그인 후 복사 ";
//$p1[1]和$m2[1]就是匹配到的内容 ------解决思路----------------------
<br /><?php<br /><br />$s1 = '这里是描述字符( )<table name="optionsTable" cellpadding="0" cellspacing="0" width="100%"><tr><td width="25%">AAAAA </td><td width="25%"> BBBBB </td></tr></table>';<br /><br />$s2 = '这里是描述字符( )<table name = "optionsTable" cellpadding = "0" cellspacing = "0" width = "100%"><tr><td width = "50%"><img src = "2061.png" style = "vertical-align:middle;" / alt="Php 提取表格内容的正则表达式" > </td><td width = "50%"> <sub>0</sub></td></tr></table>';<br /><br />//换个思路吧,不要提取而是删减<br />//包括table/tr标签就再加2条<br />$replace = array('/<\s*td.*>/U', '/<\s*\/td\s*>/U');<br /><br />echo preg_replace($replace, '', $s1);<br />echo '<br />';<br />echo preg_replace($replace, '', $s2);<br /><br /> 로그인 후 복사
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31
|