/* alarms */
.aaa {
background-image:url(/a.png) !important;
}
.bbb {
background-image:url(/b.png) !important;
}
.ccc{
background-image:url(/c.gif) !important;
}.ddd{ color: black;}
.eee{background-image:url(/e.png) !important;}文件内容如上, 现在需要提取每个css名字以及行号,
比如
1: .aaa
4: .bbb
7: .ccc
9: .ddd
10: .eee
写一个正则应该不难 但怎么得到行号信息
.aaa {
background-image:url(/a.png) !important;
}
.bbb {
background-image:url(/b.png) !important;
}
.ccc{
background-image:url(/c.gif) !important;
}.ddd{ color: black;}
.eee{background-image:url(/e.png) !important;}文件内容如上, 现在需要提取每个css名字以及行号,
比如
1: .aaa
4: .bbb
7: .ccc
9: .ddd
10: .eee
写一个正则应该不难 但怎么得到行号信息
/* alarms */
.aaa {
background-image:url(/a.png) !important;
}
.bbb {
background-image:url(/b.png) !important;
}
.ccc{
background-image:url(/c.gif) !important;
}.ddd{ color: black;}
.eee{background-image:url(/e.png) !important;}TEXT;
$i = 0;
echo preg_replace("/^(\.)?/me", '++$i.":$1"', $s);
1:/* alarms */
2:.aaa {
3: background-image:url(/a.png) !important;
4:}
5:.bbb {
6: background-image:url(/b.png) !important;
7:}
8:.ccc{
9: background-image:url(/c.gif) !important;
10:}.ddd{ color: black;}
11:.eee{background-image:url(/e.png) !important;}写成你那样还得想想
/* alarms */
.aaa {
background-image:url(/a.png) !important;
}
.bbb {
background-image:url(/b.png) !important;
}
.ccc{
background-image:url(/c.gif) !important;
}
.ddd{ color: black;}
.eee{background-image:url(/e.png) !important;}TEXT;
$i = 0;
echo preg_replace_callback("/^(\.)?/m", 'foo', $s);
function foo($r) {
global $i;
$i++;
if($r[1] == '.') return "$i:$r[0]";
return $r[0];
}/* alarms */
2:.aaa {
background-image:url(/a.png) !important;
}
5:.bbb {
background-image:url(/b.png) !important;
}
8:.ccc{
background-image:url(/c.gif) !important;
}
11:.ddd{ color: black;}
12:.eee{background-image:url(/e.png) !important;}你那个 }.ddd{ color: black;}
处理起来有点麻烦
这个想法很不错,在把文件读出来之后,在每一行前人工加上行号,然后再匹配
但为啥我echo出来的东西不像你那样是有换行的?