Bagaimana cara membangun sintaks ekspresi reguler untuk tag HTML?
Ekspresi reguler memiliki posisi yang tak tergantikan dalam proses pemrosesan string. Ada paket dukungan ekspresi reguler yang sesuai dalam bahasa tingkat tinggi komputer saat ini.
Jika kita memperlakukan kode HTML di halaman web sebagai string terstruktur, bagaimana kita bisa mengekstrak tag HTML yang diinginkan (tag) dengan cara yang mirip dengan ekspresi reguler?
Jangan pertimbangkan bagaimana mengimplementasikannya terlebih dahulu, tetapi pertimbangkan bagaimana menggambarkan tag HTML dengan cara yang seperti ekspresi reguler. Untuk mendapatkan tag HTML, Anda perlu mengetahui 2 jenis atribut tag:
1. Lokasi label;
2. Atribut tag itu sendiri;
Misalnya, di halaman HTML berikut:
<Html>
<body>
<Div id = "Bodywrapper">
<Div id = "LeftWrapper">
</div>
<Div id = "rightwrapper">
<div>
<div>
<div>
<div>
</div>
</div>
</body>
</html>
Jika Anda ingin mengekstrak tag div kedua dalam kode HTML di atas, maka saya perlu menentukan informasi ID, kelas dan lokasi div. Pertanyaannya sekarang adalah: bagaimana merancang tata bahasa ekspresi yang memenuhi persyaratan di atas?
Misalnya:
gettag: div {tag-name: div; tag-position: 2; tag-class: kolom; tag-id:; Konten tag :;}
tag-parent {tag-name: div; tag-position: 2; tag-class: kolom; tag-id:; Konten tag :;}
tag-anak {......}
Di atas ini adalah sintaks deskriptif yang mudah dipahami.
Atau sintaksis seperti ularahan:
Gettag: Div
nama tag:
Tag-id:
Tag-Posisi: 2
Tag-Class: Kolom
Konten Tag:
Tag-parent:
nama tag:
Tag-id:
Tag-Posisi: 2
Tag-Class: Kolom
Konten Tag:
Tag-Child:
Jenis Tag: Tabel
Saya tidak tahu apakah ada bentuk ekspresi tata bahasa yang lebih cocok. Selama tata bahasa ekspresi ini dapat dirancang secara wajar, pekerjaan selanjutnya akan mudah dilakukan. Tujuan utama dari ini adalah: programmer dapat mengurai kode HTML dengan ekspresi ini, sama nyamannya dengan menangani string biasa.
Saya berharap semua orang akan berpartisipasi dan memberikan lebih banyak ide. Saya akan meningkatkan tata bahasa ini berdasarkan umpan balik semua orang dan membuat implementasi berdasarkan tata bahasa ini.
Lihat:
Pengantar dasar untuk ekspresi reguler dapat ditemukan di sini:
http://www.vevb.com/htmldata/2006-03-16/1142469074.html
http://www.vevb.com/htmldata/2006-03-16/1142468929.html
Ekspresi reguler pertama kali diusulkan oleh ahli matematika Stephen Kleene pada tahun 1956, berdasarkan hasil penelitian tambahan bahasa alami. Ekspresi reguler dengan sintaks penuh digunakan dalam bentuk pencocokan karakter dan kemudian diterapkan pada bidang teknologi informasi cair. Sejak itu, setelah beberapa periode pengembangan, standar saat ini telah disetujui oleh ISO (Organisasi Standar Internasional) dan diakui oleh Open Group.
Ekspresi reguler bukan bahasa khusus, tetapi dapat digunakan sebagai standar untuk menemukan dan mengganti teks dalam file atau karakter. Ini memiliki dua standar: Ekspresi Reguler Dasar (BRE), Extended Regular Expressions (ERE). ERE termasuk fungsi BRE dan konsep lainnya.
Ekspresi reguler digunakan dalam banyak program, termasuk XSH, Egrep, SED, VI dan program di bawah platform UNIX. Mereka dapat diadopsi oleh banyak bahasa, seperti HTML dan XML, yang biasanya hanya sebagian dari seluruh standar.