A. 求高手支招:php正則表達式修正css路徑問題
preg_replace('/<link(.*?)href=\"(.*?(?:\.css))\"/','<link${1}href=\"theme/$path/${2}\"',$source).
link 和href之間的字元串要保留,同時將css文件路徑這塊拼湊一下。你寫的,就默認link和href之間是一個空格。.*?代表任意字元。?:\.css代表以.css結尾。
B. php正則表達式提取CSS文件中所有background-position值並乘以1.5倍
<?php
$file = '需要請求的數據'
$data=file_get_contents($file);
preg_match_all('/background[^;]+;/', $data, $matches); //獲得background的所有信息
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);
?>
看看是不是你想要的
C. 如何用正則表達式,刪除html裡面的 css js
在DW里查找:<style>[^"]*</style>,替換為空,查找:style="[^"]*",替換為空。查找:<script>[^"]*</script>替換為空,就可以了。
D. 如何用正則表達式提取CSS中的圖片路徑
var str="NavBar{width:888px; height:35px; float:left;padding-left:62px; margin-top:1px; background:url(images/menu_bj.jpg) repeat-x; line-height:35px; font-size:12px;}.me{width:100px; height:35px; float:left; color:#FFFFFF; font-weight:bold; background:url(images/menu_homebj.jpg) repeat-x;}"
var arr = str.match(/url\(.+?\)/ig);
for(var i =0; i<arr.length; i++)
{
document.write(arr[i].replace("url(","").replace(")","") + "<br />");
}
E. 求過濾html標簽和CSS樣式表的正則表達式!
先過濾樣式表之後再過濾html標簽
過濾樣式表用
<STYLE>[/s/S]*<\/STYLE>
然後再用<.[^>]*>過濾其他標簽HTML
F. asp.net過濾過濾字元串,求正則表達式,style=「 任意css樣式 」過濾掉
/style="[^"]*"/
這是正則,把他鋪貨到的替換成空就好了。
G. 求一個匹配CSS屬性的正則表達式
/[^-]+(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>
H. 求獲取css樣式的js正則表達式
vartestContent='.class1{color:red}.class2{color:blue}';
functiongetCss(className){
varreStr='.'+className+'[s]*{[^}]+?}';
varre=newRegExp(reStr,"gi");
returntestContent.match(re);
}
alert(getCss('class1'));
alert(getCss('class2'));
I. CSS背景圖片的正則表達式怎麼寫
比如url(images/nan_bg_o.jpg)這是背景圖的css寫法,它的正則表達式如下
VBScript codes=".x{background:url(images/nan_bg_o.jpg);}.xx{}.xxx{background: URL(images/nan_bg_oxx.jpg) ;}"
set rx=new RegExp
rx.IgnoreCase=true
rx.Global=true
rx.Pattern="url\s*\(([^\)]+)\)"
set mc=rx.Execute(s)
for each m in mc
response.Write "<pre>"&m.submatches(0)&"</pre>"
next
set rx=nothing
J. 如何檢測SQL注入和CSS攻擊漏洞
對於他們的攻擊,主要是通過使用正則表達式來做輸入檢測:
檢測SQL meta-characters的正則表達式 :/(\%27)|(』)|(--)|(\%23)|(#)/ix
解釋:我 們首先檢查單引號等值的hex,單引號本身或者雙重擴折號。
修正檢測SQL meta-characters的正則表達式: /((\%3D)|(=))[^ ]*((\%27)|(』)|(--)|(\%3B)|(:))/i
解釋: 這個規則首先留意 = 號或它的hex值(%3D),然後考慮零個或多個除換行符以外的任意字元,最後檢測單引號,雙重破折號或分號。
典型的 SQL 注入攻擊的正則表達式: /w*((\%27)|(』))((\%6F)|o|(\%4F))((\%72)|r|(\%52))/ix
解釋:
w* - 零個或多個字元或者下劃線。
(\%27)|』 - 單引號或它的hex等值。
(\%6 F)|o|(\%4 F))((\%72)|r|-(\%52) -『or』的大小寫以及它的hex等值
檢測SQL注入,UNION查詢關鍵字的正則表達式: /((\%27)|(』))union/ix
(\%27)|(』) - 單引號和它的hex等值
union - union關鍵字
可以同樣為其他SQL查詢定製表達式,如 >select, insert, update, delete, drop, 等等.
檢測MS SQL Server SQL注入攻擊的正則表達式: /exec(s|+)+(s|x)pw+/ix
exec - 請求執行儲存或擴展儲存過程的關鍵字
(s|+)+ - 一個或多個的空白或它們的http等值編碼
(s|x) p- 『sp』或『xp』字母用來辨認儲存或擴展儲存過程
w+ - 一個或多個字元或下劃線來匹配過程的名稱
CSS的檢測也主要是正則表達式:
一般 CSS 攻擊的正則表達式: /((\%3C)|<)((\%2F)|/)*[a-z0-9\%]+((\%3E)|>)/ix
解釋:
((\%3C)|<) -檢查<和它hex等值
((\%2F)|/)*-結束標簽/或它的 hex等值
[a-z0-9\%]+ -檢查標簽里的字母或它hex等值
((\%3E)|>) -檢查>或它的hex等值
"<img src" CSS 攻擊正則表達式: /((\%3C)|<)((\%69)|i|(\%49))((\%6D)|m|(\%4D))((\%67)|g|(\%47))[^ ]+((\%3E)|>)/I
解釋:
(\%3 C)|<) -<或它的hex等值
(\%69)|i|(\%49))((\%6D)|m|(\%4D))((\%67)|g|(\%47) -』img』字母或它的大小寫hex等值的變化組合
[^ ]+ -除了換行符以外的任何跟隨<img的字元
(\%3E)|>) ->或它的hex等值
CSS 攻擊的極端的正則表達式 : /((\%3C)|<)[^ ]+((\%3E)|>)/I
解釋:
這個規則簡單尋找<+除換行符外的任何字元+>。由於你的web伺服器和web應用程序的構架,這個規則可能產生一些錯誤。但它能保證捉住任何CCS或者類似CSS的攻擊。