| Thành viên | Trả lời |
awas

57 bài
| 1-12-2008 0:11:26 Để tìm 1 thẻ bất kỳ trong html chúng ta sử dụng pattern sau
<.*?>
Tuy nhiên để xóa thẻ <script> thì nhiều vấn đề nảy sinh. chúng ta cần xóa
<script*>*</script> trong đó * đại diện cho bất kỳ nội dung gì.
Như vậy tuân thủ theo luật ở trên chúng ta có thể dùng
<script.*?>.*?</script>
tuy nhiên khi dùng luật này hầu hết chúng ta không thấy code chạy theo đúng ý. Nguyên nhân tại sao?
chúng ta biết thẻ <script> trong html sẽ có dạng.
<script> alert('some thing'); <script>
Như vậy thực tế trong code html chúng ta có
<script>\r\nalert('some thing');\r\n<script>
Đó chính là vấn đề. Như vậy để parttern có thể chạy tốt, chúng ta phải xóa bỏ các ký tự không nhìn thấy \r \n.
|
 |