2011-12-27 11 views
10

से पहले और बाद में टेक्स्ट कैसे प्राप्त कर सकता हूं मेरे पास एक स्ट्रिंग है और मैं "-" (डैश) के पहले और बाद में शब्दों को प्राप्त करना चाहता हूं। मैं उसे कैसे कर सकता हूँ?मैं "-" (डैश)

उदाहरण: स्ट्रिंग:

"First part - Second part" 

उत्पादन:

first: First part 
second: Second part 
+0

खेद अगर मैं गलत था। – HeartlessArchangel

उत्तर

19
कोई त्रुटि-जांच या सुरक्षा के साथ

, इस काम कर सकता था:

String[] parts = theString.split("-"); 
String first = parts[0]; 
String second = parts[1]; 
1

उपयोग indexOf() और String वर्ग के substring() विधि, दिए गए उदाहरण के लिए आप भी उपयोग कर सकते हैं split() विधि

9

आसान: String.split विधि का उपयोग करें।

उदाहरण:

final String s = "Before-After"; 
final String before = s.split("-")[0]; // "Before" 
final String after = s.split("-")[1]; // "After" 

ध्यान दें कि मैं त्रुटि-जांच की और सफेद अंतरिक्ष आप पर निर्भर ट्रिमिंग जा रहा हूँ!

5
int indexOfDash = s.indexOf('-'); 
String before = s.substring(0, indexOfDash); 
String after = s.substring(indexOfDash + 1); 

पढ़ना the javadoc इस तरह के सवालों के जवाब खोजने में मदद करता है।

0
@Test 
    public void testSplit() { 
     String str = "First part - Second part"; 
     String strs[] = str.split("-"); 
     for (String s : strs) { 
      System.out.println(s); 
     } 
    } 

आउटपुट:

पहला भाग

दूसरा हिस्सा

+0

मैंने कोशिश की और यह केवल दूसरे भाग – HeartlessArchangel

+0

देता है मैंने इसे स्वयं करने की कोशिश की और यह अपेक्षा के अनुसार काम करता है। केवल एक चीज जो आपको करना है वह स्ट्रिंग को ट्रिम करना है। –

संबंधित मुद्दे