koddla

Yazılımcıları bilgi ile güçlendirir.

RegEx ile XHTML etiketlerini nasıl eşleştiririz?

Aşağıdaki açılış etiketlerini kapatma etiketleri ile eşleştirmek istiyorum:

<p>
<a href="foo">

Peki bunu düzenli ifadeler ile yapabilir miyiz? Örneğin aşağıdaki ifade işe yarar mı?

<([a-z]+) *[^/]*?>

Kısa cevap: işe yaramaz.

Neden mi? Aşağıdaki metni ayrıştırmak için RegEx’i kullanmak mümkün mü? Not: aşağıdaki bölüm görünmesi gerektiği şekilde görünüyor!

[X]HTML’yi regex ile ayrıştıramayız. Çünkü HTML regex tarafından ayrıştırılamıyor. Regex, HTML’yi doğru ayrıştırmak için kullanılabilecek bir araç değil.

Düzenli ifadeler, HTML tarafından kullanılan yapıları anlamak için yeterince karmaşık olmayacak şekilde gelişmiş bir araç. HTML normal bir dil değil ve bu nedenle normal ifadelerle ayrıştırılamaz. Regex sorguları HTML’yi anlamlı bölümlere bölmek için donanımlı değil. Birçok kez ama beni alamıyor. Perl tarafından kullanılan gelişmiş düzenli ifadeler bile HTML ayrıştırma görevine bağlı değildir. Beni asla kıramazsın. HTML, düzenli ifadelerle ayrıştırılamayacak kadar karmaşık bir dil. Jon Skeet bile düzenli ifadeler kullanarak HTML’yi ayrıştıramaz. HTML’yi düzenli ifadelerle ayrıştırmaya her çalıştığınızda, kutsal olmayan Rus bilgisayar korsanları webapp’ınızı pwn. HTML’yi regex ile ayrıştırmak lekeli ruhları yaşayanlar diyarına çağırır. HTML ve regex aşk, evlilik ve ritüel gibidir. <center> tutamayacak kadar çok geç. Regex ve HTML’nin aynı kavramsal alanda birlikte gücü, zihninizi çok sulu macun gibi yok edecektir. HTML’yi regex ile ayrıştırırsanız, Onlara ve onların küfürlü yollarına boyun eğerseniz, bu da hepimizi Adı Temel Çok Dilli Düzlemde ifade edilemeyen kişi için insanlık dışı bir emekçiye mahkum eder, o gelir. HTML artı-regexp, siz gözlemlerken, korku saldırısında ruhunuzun sönümlendiğini gözlemlerken duyarlının sinirlerini sıvılaştıracaktır. Rege̿̔̉x tabanlı HTML ayrıştırıcıları öldüren kanserdir Çok geç çok geç, regex’in tüm canlı dokuları tüketmesini sağlayan bir chi͡ld ihlalinden kurtarılamayız (yapamayacağı HTML hariç, daha önce kehanet edildiği gibi) sevgili lord bize html ayrıştırmak için regex kullanarak bu bela hayatta nasıl olabilir bize yardım, HTML işlemek için bir araç olarak regex kullanarak korkunç işkence ve güvenlik delikleri sonsuzluk insanlığı mahkum ettibu dünya ve c͒ͪo͛ͫrrupt varlıkların korkunç dünya arasında bir brea ch kurar (SGML varlıkları gibi, ama daha yozlaşmış) HTML için reg ex parsers dünyasının sadece bir parıltısı,bir programmer’ın bilincinibir world’ye umutsuzcataşıyacaktır, o geliyor, pestilent slithy regex-enfeksiyon wil l Visual Basic gibi tüm zaman için HT ML ayrıştırıcı, uygulama ve varoluşyutulmasısadece daha kötü o com geliyor ofi ght h e com̡e̶s,̕h̵i’s un̨ho͞lyradiańcé de stro҉yingtüm enli̍̈́̂̈́ghtenment, HTML etiketleri lea͠ki̧n͘g fr̶ǫm ̡yo͟ur eye͢s̸ ̛l̕ik͏e liquid pain, re̸gular expression ayrıştırma şarkısı burada sp mor tal man seslerini heyecan verecek ben o güzel ̲͚̖͔̙î̩́t̲͎̩̱͔́̋̀ güzelolduğunu görebiliyor musunuzo o ffing of yalan o LOŚ͖̩͇̗̪̏̈́TALL LOST th e pon̷y ogeliyorc̶̮omo oich veya permeat esall FAC E YÜZÜM ohtanrı n o HAYıRNOO̼OO N Φduro dur o dur*̶͑̾̾̅ͫ͏̙̤g͇̫͛͆̾ͫ̑͆l͖͉̗̩̳̟̍ͫͥͨ e̠̅s not rè̑ͧ̌aͨl̘̝̙̃ͤ͂̾̆ ZA̡͊͠͝LGΌ ISͮ̂҉̯͈͕̹̘̱ TO͇̹̺ͅƝ̴ȳ̳ TH̘Ë͖́̉ ͠P̯͍̭O̚N̐Y̡ H̸̡̪̯ͨ͊̽̅̾̎Ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬC̷̙̲̝͖ͭ̏ͥͮ͟Oͮ͏̮̪̝͍M̲̖͊̒ͪͩͬ̚̚͜Ȇ̴̟̟͙̞ͩ͌͝S̨̥̫͎̭ͯ̿̔̀ͅinal snuf ͎


Bunun yerine XML ayrıştırıcıları kullanmayı deneyebiliriz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Back to top