क्या रूबी के पास एक ऐसी some_string.starts_with("abc")विधि है जिसे बनाया गया है?
क्या रूबी के पास एक ऐसी some_string.starts_with("abc")विधि है जिसे बनाया गया है?
जवाबों:
इसे कहा जाता है String#start_with?, नहीं String#startswith: रूबी में, बूलियन-ईश विधियों के नाम के साथ समाप्त होता है ?और विधि नामों में शब्दों को ए के साथ अलग किया जाता है _। यकीन नहीं है कि कहाँ sगया, व्यक्तिगत रूप से, मैं String#starts_with?वास्तविक पर पसंद करूँगाString#start_with?
आपका प्रश्न शीर्षक और आपका प्रश्न निकाय अलग-अलग हैं। रूबी के पास एक start_with नहीं है? तरीका। रेल , जो रूबी ढांचा है , हालांकि, sepp2k राज्यों के रूप में करता है। इसके लिए प्रलेखन के लिंक के लिए उनके जवाब पर उनकी टिप्पणी देखें।
आप हमेशा एक नियमित अभिव्यक्ति का उपयोग कर सकते हैं:
if SomeString.match(/^abc/)
# SomeString starts with abc
^ नियमित अभिव्यक्ति में "स्ट्रिंग की शुरुआत" का मतलब है
?सवाल शीर्षक में)
यदि यह एक गैर-रेल परियोजना के लिए है, तो मैं उपयोग करूंगा String#index:
"foobar".index("foo") == 0 # => true
start_with?विधि बस पुष्टि कर सकती है कि स्ट्रिंग की शुरुआत दी गई स्ट्रिंग से मेल खाती है - इस प्रकार अधिकांश n वर्णों पर प्रसंस्करण जहां n दी गई स्ट्रिंग की लंबाई है - जबकि indexखोज करनी होगी संपूर्ण आधार स्ट्रिंग। विफलता के मामले में, starts_with?एक एक्सेस (प्रति स्ट्रिंग) और तुलना indexकरेंगे , जबकि बेस स्ट्रिंग की पूरी लंबाई तक चलेगा।