Arkadaşlar üzerinde çalıştığım bir projede, tüm paragrafların içerisindeki kelimeleri tek tek elde edip bir diziye aktarmam lazım. Her kelimenin başına ve sonuna belli tag ekleyip veritabanına atmam lazım. Php explode ile kelimeler arası boşluktan faydalanarak kelimelerine ayırabilirim fakat ya kelimenin sonunda virgül gibi bir noktalama işareti varsa ve sonrasında boşluk yoksa, kelimeyi nasıl ayırabilirim? Ayrıca noktalama işaretlerini de korumam lazım. Bildiğiniz bir script var mı?
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
Bahsettiğin olayı Perl de cesitli yollardan yapmak mümkün, PHP'deki explode gibi Perl'de split fonksiyonuna " " ayracı vererek, Text::ParseWords modulü kullanarak, Türkçe'ye özel kelimeler için Lingua modülü kullanarak ve bunlardan hiçbirini kullanmadan Regular Expression kullanarak:
Regular Expression 'da parantez hem gruplama hem de "capture" yani istenen kelimeyi çekmek için kullanılıyor. RegExp içinde en dıştaki parantez, kelimeyi cekip @words dizisine eklemek için, ortadaki (?:[-']\w+) parantez ise kelimeler arasında - ve ' gibi işaretli olanları da tek kelime olarak gruplamak için. Biraz karışık oldu kabul ediyorum fakat RegExp 'le bu sayede cok kısa bir tanımla birçok işlemi yapabiliyorsun, avantajı o. PHP de RegExp'i destekliyor, yani bu RegExp'i PHP'de kullanabilirsin.
If koşullu yapısı içinde strpos fonksiyonu ile olası tüm imla karakterlerini kontrol edip explode ile ayırabilirsiniz. Veya Regex kullanışlı olabilir ayrıca.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu ileti mobil sürüm kullanılarak atıldı >