இதுவரை சரம் உருவாக்கம்,ஒப்பீடல் மற்றும் கையாளுதல் பார்த்தோம். இந்த அத்தியாயத்தில் சரத்திலிருந்து வேறு வர்க்கத்தை சார்ந்த பொருட்களை எவ்வாறு உருவாக்குவது என காண்போம்.
சரத்திலிருந்து array-ஐ உருவாக்குதல்:
ஒரு சரத்திலிருந்து array-வைப்பெற split செயற்கூற்றையும் மற்றும் சில செங்கோவைகளையும் (regular expressions) பயன்படுத்த வேண்டும்.
Split செயற்கூறானது சரத்தை பகுதிகளாகப் பிரித்து array கூறுகளாக வைக்கிறது. இந்த மாற்றத்தின்போது split செயற்கூறு எந்த குறியீட்டைப் பயன்படுத்தி பிரிக்க வேண்டும் என்பதை செங்கோவைகள் சொல்கின்றன.
நாம் ஒரு முழுமையான சரத்தை array கூறுகளாக மாற்றுவதை பின்வரும் எடுத்துக்காட்டில் காணலாம்:
myArray = "ABCDEFGHIJKLMNOP".split => ["ABCDEFGHIJKLMNOP"]
இது MyArray என்கிற ஒரு array-க்கான பொருளை உருவாக்கியுள்ளது. எதிர்பாராத விதமாக, இது நமக்கு பயன்படாது. ஏனென்றால் சரத்திலுள்ள ஒவ்வொரு எழுத்தையும் தனித்தனியான array கூறாக வைக்க வேண்டும். இதை செய்ய நாம் செங்கோவைகளைப் பயன்படுத்தவேண்டும். இதில் இரண்டு எழுத்துக்களின் இடையே இருக்கும் புள்ளியாக (//) ஒரு செங்கோவையினைக் கொடுக்க வேண்டும். மற்றும் இதை split செயற்கூர்றிற்கு argument ஆக அனுப்ப வேண்டும்:
myArray = "ABCDEFGHIJKLMNOP".split(//) => ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P"]
மேலும் வார்த்தைகளை அடிப்படையாக கொண்டும் array-யை உருவாக்கலாம். இயல்பாகவே split செயற்கூறு இரு வார்தைகளுக்கு இடையேயுள்ள இடைவெளியை வைத்து array கூறுகளை உருவாக்குகிறது.
myArray = "Paris in the Spring".split(/ /) => ["Paris", "in", "the", "Spring"]
அல்லது காற்புள்ளியால்(“,”) பிரிக்கப்பட்ட சரத்திலிருந்தும் array-வைப்பெறலாம்.
myArray = "Red, Green, Blue, Indigo, Violet".split(/, /) => ["Red", "Green", "Blue", "Indigo", "Violet"]
சரத்திலிருந்து பிற பொருட்களைப்பெறுதல்:
சரத்திலிருந்து ரூபியிலுள்ள மற்ற வகை பொருட்களையும் (fixnums, floats மற்றும் symbols) பெறலாம்.
சரத்திலிருந்து integer-ஐப்பெற to_i செயற்கூற்றை பயன்படுத்தலாம்:
"1000".to_i => 1000
சரத்திலிருந்து floating point-ஐப்பெற to_f செயற்கூற்றை பயன்படுத்தலாம்:
"1000".to_f => 1000.0
சரத்திலிருந்து symbol-ஐப்பெற to_sym செயற்கூற்றை பயன்படுத்தலாம்:
"myString".to_sym => :myString
— தொடரும்
பிரியா – priya.budsp@gmail.com – ஐக்கிய அரபு அமீரகம்