求一个匹配CSS属性的正则表达式

作者&投稿:平莘 (若有异议请与网页底部的电邮联系)
求个正则表达式,匹配html标签内的style属性~

如果是为了替换掉style属性,可以用如下表达式 :
匹配用双引号的属性:
style="[^\"]*?"
再来一次单引号的:
style='[^\']*?'

var testContent = '.class1{ color:red }.class2 { color:blue }'; function getCss(className){ var reStr = '\.' + className + '[ \s]*\{[^\}]+?\}'; var re = new RegExp(reStr, "gi"); return testContent.match(re); } alert(getCss('class1')); alert(getCss('class2'));

/[^-]+(width[^;]+;)/g;

测试代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta name="generator" content="editplus" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
</head>
<body>
<script language="javascript">
<!--
str ="width : 697px;width : 693px;width:694px;width : 695px;width : 696px; border:1px solid #ccc; border-width:3px;"
re = /[^-]+(width[^;]+;)/g;
alert(str.match(re));

//-->
</script>
</body>
</html>

假如str =" color:red;width : 697px;...."时连color也匹配上了,
wokanxia的不行~~单独用match方法不好弄的.

[^-;]+width改为[^-;]+|\s*width
不过这样只能匹配一次而且还重复出现两次...

这个我不太懂,不过你能不能换个方式,灵活一点,
先吧color和border-color都匹配了,
然后在单独匹配border-color,最后剩下color,也是一样的效果.

JS如何使用正则定位CSS的id元素并添加属性?
答:var reg = /]+id[=\"\']+([^\"\']*)[\"\']?z\-index[:\x20\r\n\f]+2147483646/gi;var html = document.body.innerHTML;html.match(reg);var div = document.getElementById(RegExp.$1);

php正则表达式提取CSS文件中所有background-position值并乘以1.5倍_百 ...
答:print_r($matches);count = count($matches[0]);for ($i=0; $i <$count ; $i++) { preg_match_all('/[-0-9]+px/', $matches[0][$i],$ab ); //获得 x ,y if ($ab[0][0]) { x[] = intval($ab[0][0])*1.5; //只要x的值 } } print_r($x);?> 看看...

正则表达式 「函数封装案例直接拿来用」
答:CSS:HTML JS:1.大括号 量词符. 里面表示重复次数 2.中括号 字符集合。匹配方括号中的任意字符.3.小括号表示优先级【有小括号的先算】预定义类指的是某些常见模式的简写方式.表单验证案例:replace() 方法可以实现替换字符串操作,用来替换的参数可以是一个字符串或是一个正则表达式。replace第一个...

css的正则匹配
答: div span[style*="font-size"]{ color:red;} aaaa E[att^=”val”] 属性att的值以"val"开头的元素 E[att$=”val”] 属性att的值以"val"结尾的元素 E[att*=”val”] 属性att的值包含"val"字符串的元素 我试着可以啊,颜色变成红的了 ...

请问如用正则表达式表式:以 开头 以结尾的.中间是任意的字体_百度知 ...
答:/().*?(?=<\/style>)/ 不知道你用的是什么语言,暂时用js做个例子 alert("/*CSS定义*/<STYLE>/*CSS定义*/</STYLE>".replace(/().*?(?=<\/style>)/ig,"$1"))

求javascript正则中通配一行数字的表达式
答:var pattern = /[a-zA-Z-]+:[\w :\.\(\)=\/-]+;?/g; //匹配css var str = "margin-left:100px;background:url(../images/img.jpg) no-repeat left center 12px 20px;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50));text-align:left";alert(str.match(pattern))...

正则表达式匹配HTML标签之间的内容
答:(?<=>)[^<>]+(?=<)假如html标签里面有一句:String a = " div \n" + "{ margin: 0; padding: 0; outline: 0; }";我如何把这一句取出来呢,包括标签。用正则表达式:<style([\\s\\S]*)

Java怎么使用正则匹配Jsp页面中的链接资源(包括Jsp、Js、css、图片等...
答:// 抓取文章标题private String getTitle(String html) { String patternStrs = "([^]*)";//匹配的正则表达式 Pattern pattern = Pattern.compile(patternStrs);Matcher matcher = pattern.matcher(html);String str = "";while (matcher.find()) { str = matcher.group(1);} return...

Java 正则表达式问题。
答:Java正则表达式 ((?!\\.((css)|(html)|(js)|(json)|(xml))$).)+ 完整的Java程序如下 import java.util.regex.Matcher;import java.util.regex.Pattern;public class CC { public static void main(String[] args) { String s="xxxx.js"; String regex="((?!\\.((css)|(html)|...

java中正则表达式如何使用?比如判断一个字符串是否满足某种格式,给个...
答:String regex="((?!\\.((css)|(html)|(js)|(json)|(xml))$).)+";//正则表达式 Pattern p=Pattern.compile(regex); Matcher m=p.matcher(s); if(m.matches()){ System.out.println("匹配"); }else{ System.out.println("不匹配"); } }}运行结果匹配 ...