# Ruby string function

**URL:** <https://www.ruby-forum.com/t/ruby-string-function/160309>\
**Category:** Ruby\
**Created:** [February 14, 2009, 6:51am UTC](https://www.ruby-forum.com/t/ruby-string-function/160309 "2009-02-14T06:51:21Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![nilez](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/34f0e0/32.png) [@nilez](https://www.ruby-forum.com/u/nilez)\
**Post date:** [February 14, 2009, 6:51am UTC](https://www.ruby-forum.com/t/ruby-string-function/160309/1 "2009-02-14T06:51:21Z")

</div>

hi

i am writing code in ruby which for converting

amjad\_alI\_khAn\khamAj-4.amjad\_alI\_khAn.zakir\_hussain\_and\_the\_maestros\_3.mp3

format from file to

Zakir Hussain And The Maestros 3\Khamaj 4 - Amjad Ali K. (Zakir  
Hussain And The Maestros 3).mp3

such as  
1)remove \_ and replace by space  
2)make first letter capital of each letter

and store this format in another file  
can anyone help me

---

<div class="post-metadata">

**Author:** ![nilez](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/34f0e0/32.png) [@nilez](https://www.ruby-forum.com/u/nilez)\
**Post date:** [February 14, 2009, 8:08am UTC](https://www.ruby-forum.com/t/ruby-string-function/160309/2 "2009-02-14T08:08:26Z")

</div>

Nilesh K. wrote:

> hi
> 
> i am writing code in ruby which for converting
> 
> amjad\_alI\_khAn\khamAj-4.amjad\_alI\_khAn.zakir\_hussain\_and\_the\_maestros\_3.mp3
> 
> format from file to
> 
> Zakir Hussain And The Maestros 3\Khamaj 4 - Amjad Ali K. (Zakir  
> Hussain And The Maestros 3).mp3
> 
> such as  
> 1)remove \_ and replace by space  
> 2)make first letter capital of each letter
> 
> and store this format in another file  
> can anyone help me

str =  
‘amjad\_alI\_khAn\khamAj-4.amjad\_alI\_khAn.zakir\_hussain\_and\_the\_maestros\_3.mp3’

new\_str = str.gsub("\_", " ")  
puts new\_str

new\_str = new\_str.gsub(/\w\*/) do |match|  
match.capitalize  
end  
puts new\_str

new\_str = new\_str.gsub("-", " ")  
puts new\_str

pieces = new\_str.split(/.|\/) #split on . or   
p pieces

result1 = pieces[3]  
result2 = pieces[1]  
result3 = pieces[2]  
result4 = pieces[3]  
result5 = pieces[4].downcase

puts “#{result1}\#{result2} - #{result3} (#{result4}).#{result5}”

–output:–  
amjad alI khAn\khamAj-4.amjad alI khAn.zakir hussain and the maestros  
3.mp3  
Amjad Ali K.\Khamaj-4.Amjad Ali K…Zakir Hussain And The Maestros  
3.Mp3  
Amjad Ali K.\Khamaj 4.Amjad Ali K…Zakir Hussain And The Maestros  
3.Mp3  
[“Amjad Ali K.”, “Khamaj 4”, “Amjad Ali K.”, “Zakir Hussain And The  
Maestros 3”, “Mp3”]  
Zakir Hussain And The Maestros 3\Khamaj 4 - Amjad Ali K. (Zakir  
Hussain And The Maestros 3).mp3
