String str = "\u0054\u0068\u0069\u006e\u006b\u0050\u0061\u0064";
String[] strArray = str.split("\\");
लेकिन यह त्रुटि हुई।विभाजन ("\") और त्रुटि
धागा "मुख्य" java.util.regex.PatternSyntaxException में अपवाद: सूचकांक 1
String str = "\u0054\u0068\u0069\u006e\u006b\u0050\u0061\u0064";
String[] strArray = str.split("\\");
लेकिन यह त्रुटि हुई।विभाजन ("\") और त्रुटि
धागा "मुख्य" java.util.regex.PatternSyntaxException में अपवाद: सूचकांक 1
पास अप्रत्याशित आंतरिक त्रुटि यह
String[] strArray = str.split("\\\\");
कारण होना चाहिए क्यों क्योंकि Regex
में है, \
का विशेष अर्थ है इसलिए आपको इसे \\
में भागने की आवश्यकता है।
और जावा में, \\
होना चाहिए बराबर
String.split(String regex)
करने के लिए \\\\
विधि पैरामीटर RegEx
के रूप में ले लो।
\
के लिए regex \\\\
प्रयास करें
String[] strArray = str.split("\\\\");
कारण है कि हम "\\\\"
उपयोग करते हैं,
\
के लिए Regex \\
अब \\
\
के रूप में व्यवहार किया जाता है भागने charact लागू किया जाता है एर तर्क (\n
= नई लाइन, \\
= \
)
तो "\\"
के लिए उपयोग हम "\\\\"
अपनी भ्रमित नहीं आशा है कि ..: डी
और आपको भी धन्यवाद – evilYoung
कि ज्यादा मतलब नहीं है। आपकी मूल स्ट्रिंग यूनिकोड वर्णों का उपयोग करती है और ThinkPad
के बराबर है। तो वैसे भी हटाने के लिए कोई स्लैश नहीं है।
दूसरे शब्दों में, कोड के नीचे दो बार ThinkPad
प्रिंट:
public static void main(String args[]) {
String str = "\u0054\u0068\u0069\u006e\u006b\u0050\u0061\u0064";
System.out.println(str);
String[] strArray = str.split("\\\\");
System.out.println(Arrays.toString(strArray));
}
या भी स्पष्ट, कोड के नीचे सही प्रिंट:
public static void main(String args[]) {
String str = "\u0054\u0068\u0069\u006e\u006b\u0050\u0061\u0064";
String str2 = "ThinkPad";
System.out.println(str == str2);
}
सामान्य समाधान के लिए भागने के बारे में: http://commons.apache.org/lang/api-2.4/org/apache/commons/lang/StringEscapeUtils.html
String str = "\u0054\u0068\u0069\u006e\u006b\u0050\u0061\u0064";
String[] strArray = str.split(StringEscapeUtils.escapeJava("\\"));
इसे मिला। बहुत बहुत धन्यवाद – evilYoung
मूल स्ट्रिंग में कोई स्लैश नहीं है। – assylias
@assylias हां मूल स्ट्रिंग में कोई स्लैश नहीं है। लेकिन अमान्य रेगेक्स की वजह से अपवाद की ओर इशारा किया जा रहा है। –