तुम्ही जावा व्हाईट स्पेस किंवा टॅब वापरून रेषा विभाजित करू शकता: विभाजित () पद्धत: java.lang. स्ट्रिंग श्रेणी: ही पद्धत एक सामान्य अभिव्यक्ती घेते,: आपण एक रेषा विभाजित करण्यासाठी एक पांढरी जागा-जुळणारे रेगेक्स पास करू शकता जेथे शब्द रिक्त स्थानांद्वारे विभक्त केले जातात. किंवा ते वाटण्याइतके सोपे नाही, विशेषत: जर तुम्ही नियमितपणे जावामध्ये एन्कोड करत नाही. इनपुट लाइनमध्ये अग्रगण्य-खालील मोकळी जागा असू शकते, त्यात शब्दांमधील अनेक पांढऱ्या जागा असू शकतात आणि शब्द टॅबद्वारे देखील वेगळे केले जाऊ शकतात. तुम्हाला हवे असल्यास तुमच्या सोल्युशनने या सर्व अटींची काळजी घेतली पाहिजे शब्द नाही रिक्त दोर.

या लेखात, मी तुम्हाला जावामध्ये स्ट्रिंगला स्पेसमध्ये कसे विभाजित करू शकतो हे दर्शविण्यासाठी काही उदाहरणे दर्शवितो. विभाजित करून माझा अर्थ आहे की आपल्याला स्ट्रिंग अॅरे किंवा अॅरेलिस्ट ऑफ स्ट्रिंग म्हणून वैयक्तिक शब्द मिळवा, जे आपल्याला आवश्यक आहे.

या जावा स्ट्रिंग ट्यूटोरियल मध्ये, मी तुम्हाला एक ओळ विभाजित करण्याचे तीन मार्ग दाखवतो जेथे शब्द वेगळे केले जातात पांढरी मोकळी जागा किंवा Apache Commons किंवा Google Guava सारख्या तृतीय पक्ष ग्रंथालयाचा वापर न करता JDK via द्वारे टॅब. पहिले उदाहरण म्हणजे तुमची आदर्श परिस्थिती जिथे प्रत्येक लॅरी शब्द फक्त एका जागेने विभक्त केला जातो.

दुसऱ्या उदाहरणामध्ये, तुम्ही जावामध्ये लोभी रेग्युलर एक्सप्रेशन वापरून अनेक स्पेस किंवा टॅब कसे हाताळायचे ते शिकाल, उदा. ” s +” ज्यामध्ये पांढऱ्या मोकळ्या जागा जास्त आढळतील आणि तिसऱ्या उदाहरणात तुम्ही इनपुट लाईनमधील अग्रगण्य पांढऱ्या मोकळ्या जागा कशा हाताळायच्या ते शिकाल. आपण आपल्या गरजेनुसार या सर्व एका समाधानामध्ये एकत्र करू शकता.

आणि जर तुम्ही जावा जगात नवीन असाल तर मला स्विच करण्याचा सल्ला देखील दिला जातो जावा मास्टरक्लास पूर्ण करा चांगल्या संरचित मार्गाने जावा शिका. हा जावा मधील सर्वोत्तम ऑनलाइन शिक्षण अभ्यासक्रमांपैकी एक आहे.

उदाहरण 1 – एक रेषा विभाजित होते जिथे शब्द नियमित पांढऱ्या जागेद्वारे वेगळे केले जातात

हे सर्वात सोपे प्रकरण आहे. सहसा, शब्द फक्त एका पांढऱ्या जागेद्वारे वेगळे केले जातात. ते शेअर करण्यासाठी – फक्त शब्दांचा संच मिळवण्यासाठी कॉल करा विभाजित () इनपुट लाइनवरील पद्धत, नियमित अभिव्यक्ती म्हणून जागा उत्तीर्ण करणे, म्हणजे“”, हे एका पांढऱ्या जागेला अनुरूप असेल – त्यानुसार रेषा विभाजित करेल.

String lineOfCurrencies = "USD JPY AUD SGD HKD CAD CHF GBP EURO INR";
String[] currencies = lineOfCurrencies.split(" ");

System.out.println("input string words separated by whitespace: "
                      + lineOfCurrencies);
System.out.println("output string: " + Arrays.toString(currencies));

Output:
input string words separated by whitespace: USD JPY AUD SGD HKD CAD
                                 CHF GBP EURO INR
output string: [USD, JPY, AUD, SGD, HKD, CAD, CHF, GBP, EURO, INR]

स्ट्रिंगला स्ट्रिंग अॅरेमध्ये रूपांतरित करण्याचा हा सर्वात सोपा मार्ग आहे, परंतु जर आपण स्ट्रिंग अॅरेला स्ट्रिंगच्या अॅरेलिस्टमध्ये रूपांतरित करू इच्छित असाल तर आपण पाहू शकता जावा डायटेलद्वारे प्रोग्राम कसा करावा, नवशिक्या և मध्यवर्ती जावा प्रोग्रामरसाठी सर्वात व्यापक पुस्तकांपैकी एक.

उदाहरण 2 – एक रेषा विभाजित जेथे शब्द एकाधिक स्पेस किंवा टॅबमध्ये विभागले जातात

या परिस्थितीचे नियमन करण्यासाठी, आपल्याला एक लोभी रेग्युलर एक्सप्रेशन वापरण्याची आवश्यकता आहे जी कोणत्याही पांढऱ्या जागांशी जुळेल. आपण वापरू शकता: ” s +” या हेतूसाठी regex. आपण बारकाईने पाहिल्यास, आम्ही वापरतो नियमित अभिव्यक्तीचे रूपक lessons वर्ण धडे. s: टॅबसह कोणत्याही क्षेत्रात फिट होईल, परंतु: इ. पळून जाण्याची मागणी करतो, म्हणून ते बनते s:, पण अजून लोभी नाही.

म्हणून आम्ही जोडले + जे 1 किंवा अधिक प्रकरणांशी जुळेल, म्हणून ते लोभी बनते. याबद्दल अधिक जाणून घेण्यासाठी: ” s +” पांढरी जागा काढण्यासाठी नियमित अभिव्यक्ती, हे पहा शैक्षणिक:.

कोणत्याही परिस्थितीत, येथे वर्तमान कोड आहे.

String lineOfPhonesWithMultipleWhiteSpace = "iPhone Galaxy Lumia";
String[] phones = lineOfPhonesWithMultipleWhiteSpace.split("s+");

System.out.println("input string separated by tabs: " 
                + lineOfPhonesWithMultipleWhiteSpace);
System.out.println("output string: " + Arrays.toString(phones));

Output:
input string separated by tabs: iPhone Galaxy Lumia
output string: [iPhone, Galaxy, Lumia]

आपण पाहू शकतो की आम्ही रेषेला एका अॅरेमध्ये कसे रूपांतरित करतो जिथे तीन मूल्ये अनेक पांढऱ्या जागांनी विभागली जातात. जावामध्ये रेग्युलर एक्सप्रेशन्स कसे काम करतात याबद्दल तुम्हाला अधिक जाणून घ्यायचे असल्यास, मी रेग्युलर एक्सप्रेशन चेप्टर वाचण्याचे सुचवितो जावा: प्रोग्राम कसा करावा? Deitel द्वारे De Deitel द्वारे.

उदाहरण 3 – अग्रगण्य पांढऱ्या जागेसह तारा विभाजित करणे

जेव्हा तुमच्या इनपुट लाईनमध्ये अग्रगण्य किंवा खालील पांढऱ्या जागा जुळतात तेव्हा पांढऱ्या जागेसह स्ट्रिंगचे विभाजन करणे अधिक कठीण होते +s +: रेग्युलर एक्सप्रेशन և रिक्त ओळ आउटपुट अॅरेमध्ये घातली जाईल. हे टाळण्यासाठी, आपण कॉर्ड विभाजित करण्यापूर्वी तो कट करणे आवश्यक आहे, म्हणजे कॉल करा कट () कॉल करण्यापूर्वी विभाजित ().

किंवा त्या क्षणापासून ते लक्षात ठेवले पाहिजे जावामध्ये स्ट्रिंग अपरिवर्तित आहे, तुम्हाला एकतर एपिसोड आउटपुट किंवा चेन धरावी लागेल कट () आणि विभाजित () खालील उदाहरणात दाखवल्याप्रमाणे एकत्र.

String linewithLeadingAndTrallingWhiteSpace = " Java C++ ";
String[] languages = linewithLeadingAndTrallingWhiteSpace.split("s");
languages = linewithLeadingAndTrallingWhiteSpace.trim().split("s+");

System.out.println("input string: " + linewithLeadingAndTrallingWhiteSpace);
System.out.println("output string wihtout trim: " 
                               + Arrays.toString(languages));
System.out.println("output string after trim() and split: " 
                                + Arrays.toString(languages));

Output:
input string with leading and trailing space: Java C++ 
output string without trim: [, Java, C++]
output string after trim() and split: [Java, C++]

तुम्हाला हवे असल्यास ArrayList of String: a ऐवजी स्ट्रिंग मास नंतर या ट्युटोरियलमधील चरणांचे अनुसरण करा.

जावा प्रोग्राम जो स्ट्रिंगला स्पेस किंवा टॅबमध्ये विभागतो

हा आमचा नमुना जावा आहे जो या सर्व उदाहरणे आणि स्क्रिप्ट्स एकत्र करून तुम्हाला स्ट्रिंगला जावामध्ये रिक्त स्थानांमध्ये कसे विभागले जाऊ शकते याची संपूर्ण कल्पना देते.

public class StringSplitExample {

  public static void main(String args[]) {

    // You can split a String by space using the split()
    // function of java.lang.String class.
    // It accepts a regular expression and you just need to
    // pass a regular expression which matches with space
    // though space could be whitespace, tab etc
    // also words can have multiple spaces in between
    // so be careful.

    // Suppose we have a String with currencies separated by space
    String lineOfCurrencies = "USD JPY AUD SGD HKD CAD CHF GBP EURO INR";

    // Now, we will split this string and convert it into an array of String
    // we use regex " ", which will match just one whitespace
    String[] currencies = lineOfCurrencies.split(" ");

    System.out.println("input string words separated by whitespace: "
        + lineOfCurrencies);
    System.out.println("output string: " + Arrays.toString(currencies));

    // above regular expression will not work as expected if you have multiple
    // space between two words in string, because it could pick extra
    // whitespace as another word. To solve this problem, we will use
    // a proper greedy regular expression to match any number of whitespace
    // they are actually separated with two tabs here

    String lineOfPhonesWithMultipleWhiteSpace = "iPhone Galaxy Lumia";
    String[] phones = lineOfPhonesWithMultipleWhiteSpace.split("s+");

    System.out.println("input string separted by tabs: "
        + lineOfPhonesWithMultipleWhiteSpace);
    System.out.println("output string: " + Arrays.toString(phones));

    // above regular expression will not able to handle leading
    // and trailing whitespace, as it will count empty String
    // as another word, as shown below

    String linewithLeadingAndTrallingWhiteSpace = " Java C++ ";
    String[] languages = linewithLeadingAndTrallingWhiteSpace.split("s+");

    System.out.println("input string with leading and traling space: "
        + linewithLeadingAndTrallingWhiteSpace);
    System.out.println("output string: " + Arrays.toString(languages));

    // You can solve above problem by trimming the string before
    // splitting it i.e. call trim() before split() as shown below
    languages = linewithLeadingAndTrallingWhiteSpace.trim().split("s+");
    System.out.println("input string: " 
                     + linewithLeadingAndTrallingWhiteSpace);
    System.out.println("output string afte trim() and split: "
        + Arrays.toString(languages));
  }

}

या प्रोग्रामने जावामध्ये एक किंवा अधिक पांढऱ्या जागा किंवा टॅबसह एक ओळ विभाजित करण्यासाठी आम्ही आधी चर्चा केलेल्या तीनही मार्ग दाखवले.

स्प्लिट () पद्धतीबद्दल महत्वाचे मुद्दे.

  1. दिलेल्या रेग्युलर एक्सप्रेशनच्या योगायोगावर ही ओळ फुटते.
  2. दिलेल्या रेग्युलर एक्सप्रेशनच्या जुळण्यांच्या आसपास गणना केलेल्या ओळींची अॅरे मिळवते
  3. हे: विभाजित () पद्धत फेकणे PatternSyntaxException: – नियमित अभिव्यक्तीची वाक्यरचना अवैध असल्यास
  4. ही पद्धत जावा 1.4 मध्ये जोडली गेली आहे, म्हणून ती आधीच्या आवृत्त्यांमध्ये उपलब्ध नाही, परंतु तुम्ही जावा 5, 6, 7 किंवा 8 मध्ये वापरू शकता, कारण जावा मागच्या बाजूने सुसंगत आहे.

एवढे जावा स्पेसमध्ये स्ट्रिंग कशी विभाजित करावी. या ट्युटोरियल मध्ये, आपण एका ओळीचे विभाजन कसे करायचे ते शिकाल जिथे शब्द एका पांढऱ्या जागा, अनेक पांढऱ्या जागा आणि अग्रगण्य खालील पांढरी जागा असलेल्या टॅबने विभक्त केले जातात. मी तुम्हाला त्या शैलीचे वस्तुमान रूपांतरित करण्याची युक्ती देखील दर्शविली विभाजित () स्ट्रिंगची ArrayList रूपांतरित करण्याची पद्धत. आपल्याकडे काही प्रश्न किंवा चिंता असल्यास, मोकळ्या मनाने आमच्याशी संपर्क साधा.

अतिरिक्त प्रशिक्षण
डेटा स्ट्रक्चर्स – अल्गोरिदम. जावा वापरून डीप डायव्ह:
जावा मूलभूत. जावा भाषा:
जावा मास्टर क्लास पूर्ण करा

आपल्याला इतर जावा स्ट्रिंग प्रोग्रामिंग मॅन्युअल देखील आवडतील

  1. जावा मध्ये स्वल्पविरामाने स्वल्पविराम कसा तोडायचा?
  2. जावामध्ये सामान्य अभिव्यक्ती वापरून रेषा कशी विभाजित करायची?
  3. जावामध्ये स्ट्रिंग स्प्लिटिंगची 5 उदाहरणे
  4. जावामध्ये स्ट्रिंग विभाजित करण्याचे 2 मार्ग
  5. JavaSV मध्ये CSV स्ट्रिंग कशी विभाजित करायची?
  6. स्ट्रिंग द्वारे जावा मध्ये StringTokenizer कसे वितरित करावे?
  7. JSTL वापरून JSP पृष्ठावर ओळ ​​कशी विभाजित करावी