2017-09-13 30 views
-1

任何地方我試圖找出紙條標籤都在我的PHP的open()和close()string.Please在下面找到正則表達式找出「什麼<script>什麼</script>什麼」字符串

public function custom_xss_clean($str){ 
    if(!preg_match('/(<\/?)(script|html)(>*)/i', $str)){ 
     return true; 
    } else { 
    $this->form_validation->set_message('custom_xss_clean','The %s field invalid'); 
    return false; 
    } 
} 
我的代碼

此代碼工作在在線工具不錯,但不是我的代碼字符串

<script>alert(10)</script>

我已經嘗試了很多模式,但事先沒有luck.Please的幫助表示感謝。

+0

1.解析HTML正則表達式通常不是一個好主意,2.你也可以在html屬性中使用javascript,所以這是沒有意義/不夠的。 – jeroen

+0

感謝您的快速回復Sahil,但我爲codeigniter validation.I創建了一個回調custom_xss_clean()。因爲CI不再支持XSS_CLEAN。 –

回答

0

你的意思是你想獲得腳本標籤之間的一切嗎?

<?php 
    preg_match_all("|<[^>]+>(.*)</[^>]+>|U","<script>example: </script><div align=left>this is a test</div>",$out, PREG_PATTERN_ORDER); 
    echo '<pre>', 
    print_r($out); 

如果你是在笨尋找xss_clean然後按照此鏈接click

相關問題