के बीच अंतर रूबी में इन दो (String#scan
और String#split
) के बीच क्या अंतर है?String.scan और String.split
9
A
उत्तर
19
वे पूरी तरह से अलग-अलग उद्देश्यों की सेवा करते हैं। String#scan
स्ट्रिंग से नियमित अभिव्यक्ति के मैचों को निकालने के लिए उपयोग किया जाता है और मैचों को सरणी में वापस कर देता है, जबकि String#split
का उद्देश्य एक सरणी को एक सरणी में विभाजित करने के लिए एक सरणी को विभाजित करना है। डिलीमीटर या तो एक स्थिर स्ट्रिंग हो सकता है (जैसे ;
एक अर्धविराम पर विभाजित करने के लिए) या नियमित अभिव्यक्ति (जैसे /\s/+
किसी भी व्हाइटस्पेस वर्णों पर विभाजित करने के लिए) हो सकता है।
String#split
का आउटपुट डिलीमीटर शामिल नहीं है। इसके बजाय, डेलीमीटर को छोड़कर सबकुछ आउटपुट सरणी में वापस किया जाएगा, जबकि String#scan
का आउटपुट केवल में शामिल होगा जो डेलीमीटर द्वारा मेल किया गया है।
# A delimited string split on | returns everything surrounding the | delimiters
"a|delimited|string".split("|")
# Prints: ["a", "delimited", "string"]
# The same string scanninng for | only returns the matched |
"a|delimited|string".scan("|")
# Prints: ["|", "|"]
की
उपर्युक्त दोनों भी सरल स्ट्रिंग "|"
के स्थान पर एक नियमित अभिव्यक्ति को स्वीकार करेंगे।
# Split on everything between and including two t's
"a|delimited|string".split(/t.+t/)
# Prints: ["a|delimi", "ring"]
# Search for everything between and including two t's
"a|delimited|string".scan(/t.+t/)
# Prints: ["ted|st"]
संबंधित मुद्दे
- 1. String.split() * नहीं *?
- 2. सी # उन्नत String.Split
- 3. अजीब String.split ("\ n") व्यवहार
- 4. string.split - एकाधिक वर्ण डिलीमीटर
- 5. scala string.split काम नहीं करता
- 6. प्रदर्शन प्रश्न: String.split और फिर सरणी पर चलें, या RegExp?
- 7. string.split (टेक्स्ट) या text.split() क्या अंतर है?
- 8. String.split को बचने के लिए पाइप डेलीमीटर क्यों चाहिए?
- 9. वैकल्पिक रूप से String.split() का उपयोग करके, एक डिलीमीटर
- 10. त्रुटि का कारण क्या है 'string.split फ़ंक्शन नहीं है'?
- 11. जावा String.split प्रदर्शन के लिए precompiled regex में पारित
- 12. string.split() "अलग अपवाद से बाहर" टैब अलग फ़ाइल पढ़ने पर
- 13. Velocity में string.split का उपयोग करने के बाद सरणी के तत्वों का उपयोग कैसे करें?
- 14. क्या मैटलैब में जावा फ़ंक्शन String.split (delimiter) के समान कोई फ़ंक्शन है?
- 15. जावास्क्रिप्ट और regex: विभाजन स्ट्रिंग और विभाजक
- 16. सी # - टैब और रिक्त स्थान
- 17. नियमित अभिव्यक्तियां और जीडब्ल्यूटी
- 18. string.split एक स्ट्रिंग देता है [] मुझे एक सूची चाहिए <string> क्या एक सरणी को किसी सूची में कनवर्ट करने के लिए एक लाइनर है?
- 19. सी #: स्प्लिट स्ट्रिंग और कई स्ट्रिंग चर
- 20. संदर्भ द्वारा अपरिवर्तनीय तारों के स्लाइस और
- 21. रूबी में स्ट्रिंग मिलान regexp का विशेष भाग कैसे प्राप्त करें?
- 22. pygtk दो खिड़कियां, पॉपअप और मुख्य
- 23. पायथन सजावट और सजावटी पैटर्न के बीच क्या अंतर है?
- 24. वीबी.नेट स्ट्रिंग। स्प्लिट विधि?
- 25. "#", "$", "%", "&", और "_" "\ #", "\ $", "\%", "\ &", और "\ _"
- 26. स्ट्रिंगटोकनाइज़र का बहिष्कार क्यों किया जाता है?
- 27. एक बहु चरित्र विभाजक का उपयोग कर एक स्ट्रिंग को विभाजित करने और बनाए रखने के लिए विभाजक
- 28. PL/SQL और DML/DDL अजगर
- 29. रूबी
- 30. रूबी
क्या अंतर है? एकमात्र चीज जो उनके समान है वह यह है कि उन्हें दोनों 'स्ट्रिंग' ऑब्जेक्ट या बाल वर्ग से बुलाया जाता है। इतना भ्रमित लग रहा था? रूबी डॉक्टर पर एक नज़र डालने से यह सवाल हल हो गया था। – Shoe