‘壹’ 如何在php中使用正则表达式匹配html某标签内的特定几个属性
PHP有两种使用不同的扮森方式来使用正则表达式:PCRE(Perl兼容表示法,preg_*)函数 和 POSIX(POSIX 扩展表示法,ereg_*) 函数。幸运的是,POSIX 家族函数从 PHP 5.3.0 开始就被弊世弃用了。
我认为我说的还可以,我是从后盾人那里学习来租缺肢的,我反正觉得那里的东西还不错。你也可以去看一看
‘贰’ php正则:提取指定标签多个属性
写了个,凳绝不知道是不是你要的。
<?php
$str = <<<EOT
<img src = "aa.jpg" class ='image x1' shuxing =shux />
<img src = "bb.jpg" class ='image x2' shuxing =shux />
<a src="bb.jpg" class="a" shuxing="shux" />
EOT;
$list = array(); /指野/这里存放结果map
$c1 = preg_match_all('/<img\s.*?>/', $str, $m1); //先取出所有img标签文本
for($i=0; $i<$c1; $i++) { //对所有的唯粗喊img标签进行取属性
$c2 = preg_match_all('/(\w+)\s*=\s*(?:(?:(["\'])(.*?)(?=\2))|([^\/\s]*))/', $m1[0][$i], $m2); //匹配出所有的属性
for($j=0; $j<$c2; $j++) { //将匹配完的结果进行结构重组
$list[$i][$m2[1][$j]] = !empty($m2[4][$j]) ? $m2[4][$j] : $m2[3][$j];
}
}
print_r($list); //查看结果变量
?>
‘叁’ 怎么用php正则表达获取标签属性的值
如果你困仔用LINQ-TO-XML非常方便:比如假设纤尺凯存在一个MyLabel的标毁唤签,里边有若干属性…… string s = "<MyLabel name='MyLabel' Text='MyText' attr1='1'/>"; var result = from e in XDocument.Parse(s).Element("MyLabel"...
‘肆’ php 删除指定标签的 指定属性 正则表达式
这个可以用jQuery实现用
$("item[rdf:about]")//选咐氏嫌择你item标签中衡手带rdf:about属核慧性的标签
‘伍’ PHP正则表达式匹配html标签属性值
<?php
$str='<aid="btlist10"st="1"ditem="true"class="itemmulti-lineswith-avatar"ftios="1"ck="TlRZNFlUSTRNakk9"
ft="1"data="我想匹配的属性值"ix="10"analytical="false"s1="我想匹配的属性值2"
jxd1="0781C99068C8FEBF"jxd2=""onclick="openmenu($(this))">';
$fun=function($str,$key){
$str=preg_replace("/[sS]*s".$key."[="']+([^"']*)["'][sS]*/","$1",$str);
return$str;
};
$data=$fun($str,"data");
echo$data;
echo" ";
$s1=$fun($str,"s1");
echo$s1;
echo" ";
$other=$fun($str,"ck");
echo$other;
echo" ";
$other=$fun($str,"onclick");
echo$other;
?>
‘陆’ PHP正则匹配img标签的正则 并获得alt属性的值
preg_match_all("/清磨<燃此img.*alt\=[\"|\'](.*)[\"|\'].*>/i","<img src=\"地址\" alt=\皮正迅"alt\">",$match);
print_r($match);
‘柒’ 用php正则表达式获取html标签内的值
如果只是想获得
LT-B2F02257-C051-CF98-1E2189EE92E7EDE2
这个值的话,用不着正则,根据你form的提交方式$_GET['lt'] 或者 $_POST['lt'] 或者
$_REQUEST['lt']都可以得到这个值。正则只有当你想再从这个值中提取特定值的时候才可能有用武之地。
‘捌’ php正则匹配取出html标签内属性值问题
$matches = array();$b = '<span id="陪亮oldtitle"><strong>艾布拉姆斯他爹</芦衡宽strong></span>';preg_match_all('(<span id="oldtitle"><strong>(.*)</拦蚂strong></span>)', $b, $matches);print_r($matches);
‘玖’ PHP正则表达式取多个标签属性问题
PHP正则表达式 /<a.*?data="(.*?)".*?s1="(.*?)"/is液或 取第一和第二捕获组的数据
完整的PHP程序如下(用preg_match_all函数迹衫返回所有匹配)
<?php
$str='<aid="btlist10"st="1"ditem="true"class="itemmulti-lineswith-avatar"ftios="1"ck="TlRZNFlUSTRNakk9"ft="1"data="ABC123456"ix="10"
analytical="false"s1="ABC123"jxd1="123"jxd2="ABC123"onclick="openmenu($(this))"><aid="btlist11"st="1"ditem="闹州伍true"class="itemmulti-lineswith-avatar"
ftios="1"ck="TlRZNFlUSTRNakk9"ft="1"data="ABC123456"ix="10"analytical="false"s1="ABC123"jxd1="123"jxd2="ABC123"onclick="openmenu($(this))"><a
id="btlist12"st="1"ditem="true"class="itemmulti-lineswith-avatar"ftios="1"ck="TlRZNFlUSTRNakk9"ft="1"data="ABC123456"ix="10"analytical="false"
s1="ABC123"jxd1="123"jxd2="ABC123"onclick="openmenu($(this))">';
preg_match_all('/<a.*?data="(.*?)".*?s1="(.*?)"/is',$str,$matches);
for($i=0;$i<count($matches[0]);$i++){
echo"data=".$matches[1][$i]."s1=".$matches[2][$i]." ";
}
?>
‘拾’ PHP preg_match 正则匹配HTML属性值的问题
正则没有问腊慎郑题。我在这里也给你跑了下,没问题。你尽量贴上完整代码轮颂孝孝。