นิพจน์ทั่วไปจำเป็นต้องแทนที่ Javascript ในไฟล์ HTML


1

ฉันต้องการนิพจน์ทั่วไปที่ทำงานใน Notepad ++ เพื่อลบการอ้างอิง javascript หลายบรรทัดในไฟล์ HTML หลายร้อยไฟล์ รหัสที่ฉันต้องการลบจะมีลักษณะเช่นนี้:

<script type="text/javascript" language="JavaScript">
<!--
function ehlp_showtip(current,e,text)
{
  if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == 'Netscape'))
  {
    document.tooltip.document.write("<layer bgColor='yellow' style='border:1px solid black;font-size:12px;'>"+ text + "<\/layer>");
    document.tooltip.document.close();
    document.tooltip.left=e.pageX+5;
    document.tooltip.top=e.pageY+5;
    document.tooltip.visibility="show";
  }
}
function ehlp_hidetip()
{
  document.tooltip.visibility="hidden";
}
//-->
</script>
<script type="text/javascript" language="JavaScript">
<!--
function reDo() {
  if (innerWidth != origWidth || innerHeight != origHeight)
     location.reload();
}
if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
        origWidth = innerWidth;
        origHeight = innerHeight;
        onresize = reDo;
}
onerror = null; 
//-->
</script>

เห็นได้ชัดว่าฉันต้องการแทนที่ทุกอย่างจาก <script type="text/javascript" language="JavaScript"> ไปยังแท็กสคริปต์ปิด

แจ้งให้เราทราบหากคุณต้องการข้อมูลเพิ่มเติม


เมื่อทราบเบา: stackoverflow.com/questions/1732348/...
Nifle

คำตอบ:


1

ตามที่ โพสต์นี้ Notepad เวอร์ชันล่าสุดสามารถจัดการกับ regex แบบหลายบรรทัดได้ ดังนั้นหากคุณมีตัวเลือก:

[ ] . matches newline

เลือกและลอง regex นี้:

<script.*?/script>

สำรองไฟล์ของคุณก่อนทำสิ่งนี้ ฉันไม่ได้ใช้ notepad ++ (ฉันชอบสิ่งที่รุ่งโรจน์ที่ regexes ใน Perl หรือ emacs :)) ดังนั้นฉันจึงไม่สามารถทดสอบได้


ด้วยเหตุผลบางอย่างที่เป็นเพียงการจับคู่บรรทัดเดียวแม้ฉันจะมี ' ตรวจสอบตัวเลือก newline 'ที่ตรงกัน :(
Richie086

คุณได้ตรวจสอบ 'การแสดงออกปกติ' หรือไม่ ฉันเพิ่งลองและใช้งานได้ใน Notepad ++ เวอร์ชันล่าสุด
snowdude

@ Richie086 เพียงแค่ทำให้แน่ใจว่าคุณได้รับความคิดเห็นของ snowdude
terdon

ฉันต้องแก้ไขสิ่งนี้เล็กน้อย แต่โดยรวมฉันสามารถทำให้มันใช้งานได้ตามวัตถุประสงค์ ขอบคุณสำหรับคำตอบ.
Richie086
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.