जावा की मानक पुस्तकालय सीधे तौर पर पूरी स्ट्रिंग्स को कैपिटलाइज करने का तरीका प्रदान नहीं करती है, लेकिन आप इसे बिल्ट-इन मेथड्स के संयोजन से हासिल कर सकते हैं। अधिक सोफिस्टिकेटेड आवश्यकताओं के लिए, थर्ड-पार्टी लाइब्रेरीज जैसे कि Apache Commons Lang सीधे समाधान प्रदान करती हैं।.
(कैसे करें:) स्ट्रिंग कॉन्केटिनेशन का इस्तेमाल पुराने दिनों से हो रहा है, जब से स्ट्रिंग्स का डाटा टाइप आया। Java में, + ऑपरेटर सबसे साधारण तरीका है स्ट्रिंग्स जोड़ने का, पर यह ज्यादा स्ट्रिंग्स के साथ inefficient हो सकता है क्योंकि हर + क्रिया एक नई स्ट्रिंग बनाता है। StringBuilder का उपयोग करना एक बेहतर विकल्प है, ख़ासकर लूप्स के अंदर, क्योंकि यह मेमोरी का बेहतर प्रबंधन करता है। concat() मेथड भी है, लेकिन यह + की तुलना में कम इस्तेमाल में लाया जाता है।.
+
StringBuilder
concat()
(कैसे करें:) जावा में toLowerCase() मेथड इस्तेमाल का पुराना और मानक तरीका है। यह मेथड यूनिकोड स्टैंडर्ड का पालन करता है, जिससे अलग-अलग भाषाओँ के अक्षर सही से छोटे हों। अल्टरनेटिव्स में StringUtils.lowerCase() भी है जो Apache Commons Lang लाइब्रेरी में है। इसमें अतिरिक्त फंक्शनलिटी होती है जैसे नल्ल (null) स्ट्रिंग हैंडलिंग। एक स्ट्रिंग को लोअर केस में बदलने की इंप्लीमेंटेशन का विवरण महत्वपूर्ण है। जावा का toLowerCase() लोकेल-आधारित हो सकता है। यह अनुकूल है अगर आप मल्टी-कल्चरल ऐप्प विकसित कर रहे हों। हालांकि, आप बिना लोकेल के भी toLowerCase() का इस्तेमाल कर सकते हैं।.
toLowerCase()
StringUtils.lowerCase()
(कैसे करें:) पैटर्न मैचिंग में अक्सर Regular Expressions (RegEx) का इस्तेमाल होता है। Java में java.util.regex पैकेज रेगेक्स फंक्शनलिटी को प्रोवाइड करता है। यह 1.4 में लाया गया था, और तब से डेटा वेलिडेशन और मैनिपुलेशन मैथड में इस्तेमाल होता आ रहा है। एल्टरनेटिव के रूप में आप थर्ड-पार्टी लाइब्रेरीज का उपयोग कर सकते हैं जैसे Apache Commons Lang जो StringUtils में इसी तरह के मेथड्स प्रोवाइड करती है, लेकिन java.util.regex स्टैंडर्ड और पावरफुल रहता है। जब कैरेक्टर्स को हटाने की बात आती है, तब परफॉरमेंस भी एक अहम फैक्टर होता है इसलिए पैटर्न को कॉम्पाइल कर कैशिंग करना और उसे रीयूज़ करने से परफॉरमेंस में सुधार होता है।.
Regular Expressions (RegEx)
java.util.regex
Apache Commons Lang
StringUtils
(कैसे करें:) substring() मेथड Java में बहुत पहले से है, और ये String class का एक महत्वपूर्ण हिस्सा रहा है। जैसे-जैसे Java अपग्रेड होता गया, substring() में भी सुधार होते रहे, जिससे ये और भी कुशल हो गया। अलग-अलग तरीकों में StringBuffer और StringBuilder जैसे क्लासेस का भी इस्तेमाल होता है, जैसे substring() का इस्तेमाल करके भी कर सकते हैं। इंप्लीमेंटेशन डिटेल्स की बात करें तो, पुराने Java वर्जन्स में substring() का इस्तेमाल थोड़ा संसाधन गहन होता था क्योंकि यह नए स्ट्रिंग के लिए हमेशा नई memory अलॉकेट करता था।.
substring()
StringBuffer
(कैसे करें:) पहले के जावा वर्जन्स में length() मेथड String ऑब्जेक्ट के लिए बहुत महत्वपूर्ण था क्योंकि वह ही बताता था की स्ट्रिंग में कितने कैरेक्टर्स हैं। अब भी यह महत्वपूर्ण है, पर नए फंक्शंस और एपीआईस भी हैं जैसे कि codePoints() जो Unicode कोड पॉइंट्स को सही तरीके से गिनता है। स्ट्रिंग की लंबाई निकालने की इम्प्लीमेंटेशन की बात करें तो, JVM (Java Virtual Machine) स्ट्रिंग की इंटर्नल एरे की length प्रॉपर्टी का इस्तेमाल करती है। सिर्फ ASCII कैरेक्टर्स के लिए स्ट्रिंग की लंबाई और उनकी संख्या एक समान होती है, लेकिन यूनिकोड के लिए, वास्तविक कैरेक्टर काउंट अलग हो सकता है।.
length()
String
codePoints()
length
(कैसे करें:) पुराने जावा वर्शंस में ‘+’ ऑपरेटर स्ट्रिंग्स को जोड़ने के लिए ही मुख्य तरीका था.
आइए अपने पाठ से इन परेशान करने वाले उद्धरण चिह्नों को हटा दें। हम त्वरित सुधारों के लिए replace() विधि का उपयोग करेंगे और कठिन समस्याओं को सुलझाने के लिए regex का।.
replace()
How to? (कैसे करें?) जावा में टेक्स्ट सर्च और रिप्लेस फंक्शन्स की शुरुआत J2SE 1.4 में replaceAll और replaceFirst मेथड्स के जरिए हुई थी, जो java.lang.String क्लास का हिस्सा हैं। आज भी, ये फंक्शन्स Pattern और Matcher जैसे रेगुलर एक्सप्रेशन क्लासेज के साथ काम करते हैं। यह न केवल बेसिक स्ट्रिंग्स के लिए बल्कि जटिल टेक्स्ट पैटर्न्स के लिए भी उपयोगी हैं।.
replaceAll
replaceFirst
java.lang.String
Pattern
Matcher
जावा में रेगेक्स के लिए निर्मित सहायता मुख्य रूप से Pattern और Matcher कक्षाओं के माध्यम से होती है जो इस java.util.regex पैकेज में होती है। यहाँ एक साधारण उदाहरण दिया गया है जो एक स्ट्रिंग में एक शब्द की सभी घटनाओं को खोजने और मुद्रित करने के लिए है, केस असंवेदनशील.