<php
/PHP正则提取img标记中的任意属性/
$str = '<center><img src="/uploads/images/20100516000jpg" height="120" width="120"><br />PHP正则提取或更改img标记中的任意属性</center>';
//1、取整个代码
preg_match('/<\simg\s+[^>]src\s=\s(\'|\")()\\1[^>]\/\s>/i',$str,$match);
echo $match[0];
//2、取width
preg_match('/<img+(width=\"\d\")+>/i',$str,$match);
echo $match[1];
//3、取height
preg_match('/<img+(height=\"\d\")+>/i',$str,$match);
echo $match[1];
//4、取src
preg_match('/<img+src=\"(+\(jpg|gif|bmp|bnp|png))\"+>/i',$str,$match);
echo $match[1];
/PHP正则替换img标记中的任意属性/
//1、将src="/uploads/images/20100516000jpg"替换为src="/uploads/uc/images/20100516000jpg")
print preg_replace('/(<img+src=\"+)(images\/)(+\(jpg|gif|bmp|bnp|png)\"+>)/i',"\${1}uc/images/\${3}",$str);
echo "<hr/>";
//2、将src="/uploads/images/20100516000jpg"替换为src="/uploads/uc/images/20100516000jpg",并省去宽和高
print preg_replace('/(<img)+(src=\"+)images\/(+\(jpg|gif|bmp|bnp|png)\")+>/i',"\${1} \${2}uc/images/\${3}>",$str);
>
<%([\s\s])%>
没有其他的要求的话,就这样简单地写个试试, 从<%开始,中间用[\s\s]表示任意字符,包括换行符,然后用一个懒惰的量词,遇到%>时马上停止,中间的[\s\s]用括号包围,可以在匹配的结果中用捕获的第一组内容提取出来,欢迎讨论。
方法1:
var d = documentcreateElement("div");
dinnerHTML = '<tr><td class="ppprod_lefttd ppprod_cell">上次余额:</td><td class="ppprod_confirm ppprod_cell" id=""><span name="item22" id="item22" delim="" class="" >11474</span> </td></tr>';
alert(dgetElementsByTagName("span")[0]innerText);
用正则
var str = '<tr><td class="ppprod_lefttd ppprod_cell">上次余额:</td><td class="ppprod_confirm ppprod_cell" id=""><span name="item22" id="item22" delim="" class="" >11474</span> </td></tr>';
alert(strmatch(/^>(\d+(\\d+))<$/)[1]);
<div[^>]+>\s(:<[^>]+>\s)+(\w+)
这是第一个字符(对应(\w+)
第一、二个字符:
<div[^>]>\s(:<[^>]+>\s)+(\w+)\s(:<[^>]+>\s)+(\w+)
依次类推。
较麻烦,可以用
循环替换方法,将div标签中的 所有 <> 内容替换为空,剩余的字符就有所有的字符串。
<div[^>]+>(<[^>]+>)
将捕获替换为空,需要多次查找替换,直到查找不到为止。
只提取rufus,jenny?不行吧。没有规律啊。是把所有的标签内内容提取了吧。
如果是提取标签内的话这么写:Pattern pattern = Patterncompile(">([^<]+)<");
Matcher macher =
patternmatcher("<p><strong><br>Rufus</strong><br>Dan,
Jenny! Over here!
</p><p><strong>Jenny</strong><br>Hey, dad!
</p><p><strong>Rufus</strong><br>Hey,
hey! You made it Welcome back! How was your weekend How was your mom
</p>");
while (macherfind())
{
Systemoutprintln(machergroup(1));
}
打印结果:
Rufus
Dan, Jenny! Over here!
Jenny
Hey, dad!
Rufus
Hey, hey! You made it Welcome back! How was your weekend How was your mom
麻烦采纳我的答案吧,(^__^) 嘻嘻……
<TD[^>]+>()</TD>
内容在matchGroup(1)中
<TD[^>]+>()<BR>()<BR>()<BR>([0-9]+)<BR><FONT[^>]+>()</FONT><BR>([0-9]+周)<BR>()</TD>
以上就是关于php怎么写获取两个标签内的内容的正则表达式啊全部的内容,包括:php怎么写获取两个标签内的内容的正则表达式啊、正则表达式提取标签、正则表达式获取html标签等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)