<button onclick="alert('push_button')">alert</button>
これを
<button>alert</button>
こういう風にしたい
コード
<?php
$str = '<button onClick="alert(\'push_button\')">alert</button>';
$patan = '/( | |)(onLoad|onClick|onDblClick|onBlur|onFocus|onChange|onSelect|onSelectStart|onSubmit|onReset|onAbort|onError|onLoad|onUnload|onKeyPress|onKeyDown|onKeyUp|onMouseOut|onMouseOver|onMouseDown|onMouseUp|onMousemove|onDragDrop)=("(.*?)"|\'(.*?)\')/i';
//on〇〇を削除する
$rep = preg_replace($patan,"",$str);
//削除してもまだon〇〇があるか
if(preg_match($patan,$rep)){
//あったら、なくなるまでwhileで削除し続ける
while (preg_match($patan,$rep)) {
$rep = preg_replace($patan,"",$rep);
}
echo $rep;
} else {
//なかったら出力
echo $rep;
}
結果
<button>alert</button>
いい感じにできた。
追記
<button onclick=alert(1)>a</button>
このように書くと処理が実行されます...
正規表現マスターの人助けて!