cara paling sederhana untuk mengonversi string yang memiliki pembatas seperti koma adalah dengan menggunakan metode split
"1,2,3,4".split(',')# "1", "2", "3", "4"]
Anda dapat menemukan lebih banyak info tentang cara menggunakan metode split di ruby docs
Membagi str menjadi substring berdasarkan pembatas, mengembalikan array substring ini.
Jika pola adalah sebuah String, maka isinya digunakan sebagai pembatas saat memisahkan str. Jika pola adalah ruang tunggal, str terpecah pada spasi putih, dengan spasi kosong terdepan dan karakter spasi spasi yang berdekatan diabaikan.
Jika polanya adalah Regexp, str dibagi di mana polanya cocok. Setiap kali pola cocok dengan string panjang nol, str dibagi menjadi karakter individu. Jika pola berisi grup, masing-masing yang cocok akan dikembalikan dalam array juga.
Jika pola dihilangkan, nilai $; digunakan. Jika $; is nil (yang merupakan default), str dibagi pada whitespace seolah-olah `'ditentukan.
Jika parameter batas dihilangkan, bidang nol yang tertinggal akan ditekan. Jika batas adalah angka positif, paling banyak jumlah bidang itu akan dikembalikan (jika batas adalah 1, seluruh string dikembalikan sebagai satu-satunya entri dalam array). Jika negatif, tidak ada batasan untuk jumlah bidang yang dikembalikan, dan trailing bidang nol tidak ditekan.
Jawaban:
Atau untuk bilangan bulat:
Atau untuk versi ruby yang lebih baru (> = 1.9 - seperti yang ditunjukkan oleh Alex):
sumber
"1,2,3,4".split(",")
sebagai string"1,2,3,4".split(",").map { |s| s.to_i }
sebagai bilangan bulatsumber
Karena
String Integer
tanpa ruang sebagaiString
Untuk
String Integer
dengan ruang sebagaiString
Karena
String Integer
tanpa ruang sebagaiInteger
Untuk String
Penjelasan :
arr
-> string yang akan Anda lakukan tindakan apa pun.split()
-> adalah metode, yang membagi input dan menyimpannya sebagai array.''
atau' '
atau','
-> adalah nilai, yang perlu dihapus dari string yang diberikan.sumber
cara paling sederhana untuk mengonversi string yang memiliki pembatas seperti koma adalah dengan menggunakan metode split
Anda dapat menemukan lebih banyak info tentang cara menggunakan metode split di ruby docs
sumber
each_char
pada dasarnya tidak sama dengansplit('')
: Ini membagi string menjadi array karakternya.hmmm, saya baru sadar sekarang bahwa dalam pertanyaan awal string berisi koma, jadi jawaban saya tidak terlalu membantu ;-( ..
sumber