Stringler ile çalışırken çoğu durumdan onları bölerek dizi haline getirmemiz gerekiyor. Bu durumda JavaScript string split metodu devreye giriyor. Bu metod ile elimizdeki metini istediğimiz şekilde parçalara ayırarak bir diziye çevirebiliyoruz.
JavaScript Split Nedir?
Elimizde bulunan metini istediğimiz şekilde parçalara bölerek ondan bir array oluşturan JavaScript String metodudur. JavaScript string nesnesinin bir metodu olduğu için elimizdeki string (metin) değişkenler ile birlikte kullanıyoruz.
Örnek bir kullanım vermek gerekirse, mesela elimizde Merhaba JavaScript metnini içeren bir merhaba değişkenimiz olsun. Bu değişkeni kelimelere bölmek için kelimeler arasında bulunan boşluğu kullanabiliriz.
const merhaba = 'Merhaba JavaScript';
const dizi = merhaba.split(' ');
// Dizi değişkeni
// ['Merhaba', 'JavaScript']
// şeklinde olacaktır.
JavaScript Split String Metodu
Split metodunu kullanırken aşağıdaki yazım şekillerinden bir tanesini kullanabiliriz.
split()
split(separator)
split(separator, limit)
split() Şeklinde Kullanım
Burada, split() şeklinde kullanıldığında stringin tamamını alarak bir array oluşturacaktır.
const metin = 'Merhaba Dünya';
const dizi = metin.split();
// Dizi değişkeni
// ['Merhaba Dünya']
// şeklinde olacaktır.
Seperatör / Ayırıcı İle Kullanma
Eğer diziyi belirli bir seperatör (ayırıcı) kullanarak bölmek istersek, mesela boşluklara göre, virgüle göre, noktaya göre gibi, aşağıdaki formatı kullanmamız gerekir. Seperatör kullanıldığında, string ayırıcı metinin olduğu bölümlerden bölünür, ayırıcı metinler dahil edilmez, ve oluşan tüm bölümler bir diziye aktarılarak geri dönderilir. Kullanım şekli aşağıdaki gibidir.
split(seperator)
Ayrıcı olarak bir harf, bir kelime veya bir regex ifadesi kullanılabilir.
Şimdi bir örnek verelim mesela bir stringi içerisindeki noktalardan bölerek bir dizi oluşturalım.
const metin = 'Vara vara vardım ol kara taşa. Hasret ettin beni kavim kardaşa. Sebep ne gözden akan kanlı yaşa. Bir ayrılık bir yoksulluk bir ölüm.';
const dizi = split.metin('.');
console.log(dizi);
// Aşağıdaki çıktıyı alırız
/*[
'Vara vara vardım ol kara taşa',
' Hasret ettin beni kavim kardaşa',
' Sebep ne gözden akan kanlı yaşa',
' Bir ayrılık bir yoksulluk bir ölüm',
''
]*/
Noktaları kullanarak elimizdeki Karacaoğlan’a ait bir dörtlüğü mısralara (cümlelere) böldük. Eğer dikkat ettiyseniz en sonda boş bir string bulunmakta. Bu da sondaki noktadan dolayı eklenmiş oldu.
**Not: **Metinin sonunda veya başında ayırıcıdan varsa, eğer başta ise dizinin başına eğer sonda ise dizinin sonuna boş bir string eklenir.
**Not: ** Separatör / ayırıcı isteğe bağlıdır. Eğer kullanılmazsa, tüm metin kullanılarak tek elemanlı bir dizi oluşturulur.
Limit Kullanma
Eğer bir metini parçalara ayırdıktan sonra tüm parçaları değilde sınırlı sayıda parçayı diziye eklemek istiyorsak, limit parametresini kullanırız.
Mesela ‘Vara vara vardım ol kara taşa’ mısrasının ilk 3 kelimesini almak istersek;
const metin = 'Vara vara vardım ol kara taşa';
const dizi = metin.split(' ', 3);
console.log(dizi);
// Ekrana
// ['Vara', 'vara', 'vardım']
// basar.
Not: **limit** parametresi isteğe bağlıdır. Kullanılmazsa oluşan tüm parçalar diziye eklenir.
Virgül Kullanarak Bir Metini Diziye Çevirme
javascript split string by comma, yani virgül kullanarak bir stringi parçalara bölerek bir dizi oluşturma.
const renkler = 'Sarı, Mavi, Yeşil, Turuncu, Beyaz';
const dizi = renkler.(',');
console.log(dizi);
// Konsola
// ['Sarı', 'Mavi', 'Yeşil', 'Turuncu', 'Beyaz']
// basılır.JavaScript Split Regex
Metini bölmek için düzenli ifadeler (regular expression) kullanılabilir. Bunun için seperatör olarak bir düzenli ifade kullanmaktır. Mesela basit bir örnek verecek olursak, bir cümleyi içerisindeki rakamlardan parçalara ayıralım.
const metin = 'Merhaba 1 Dünya 2 Bugün 3 Çok 4 Güzel';
const dizi = metin.split(/\d/);
console.log(dizi);
// Konsola
// [ 'Merhaba ', ' Dünya ', ' Bugün ', ' Çok ', ' Güzel' ]
// çıktısını verir.Son Sözler
Metinler günlük hayatımızda olduğu gibi programlama yaptığımızda da hep bizimledir. Bu nedenle programlama dillerinde metinler ile ilgili çok sayıda metod bulunur. Bu yazımızda JavaScript String Split metodunu inceledik. Bu metod bir metini istenilen şekilde parçalara bölerek sonrasında bu parçalardan bir dizi oluşturur ve geri dönderir.
Sizin de sormak istediğiniz veya ekleyecekleriniz varsa yorumlara yazabilirsiniz.
