I have a code which I wanted to split based on the forward slash "/".
Whenever I have a regex split based on "////" it never splits and gives me the whole string back. I tried replacing with file separator which gives "\" and then splitting with "\\" works but not the below code.
Below is the code tested
package org.saurav.simpletests.string; import java.io.File; public class StringManipulator { public static void main(String a[]){ String testString ="/UserId/XCode/deep"; //testString = testString.replace("/", File.separator); //testString = testString.replace("/", "_"); testSplitStrings(testString); } /** * Test the split string * @param path */ public static void testSplitStrings(String path){ System.out.println("splitting of sprint starts \n"); String[] paths = path.split("////"); for (int i = 0; i < paths.length; i++) { System.out.println("paths::"+i+" "+paths[i]+"\n"); } System.out.println("splitting of sprint ends"); } }
cheers, Saurav
Programming languages, such as Python, treat a backslash (\) as an escape character. For instance, \n represents a line feed, and \t represents a tab. When specifying a path, a forward slash (/) can be used in place of a backslash. Two backslashes can be used instead of one to avoid a syntax error.
You can split a string by backslash using a. split('\\') .
There is no need to escape forward slashes. Your code works fine if you just do:
String[] paths = path.split("/");
i wanted to check validation of input date in the format dd/mm/yyyy
so need to split my string around /
You can do it simply by:
String spl[]=str.split("/"); int date=Integer.parseInt(spl[0]); int month=Integer.parseInt(spl[1]); int year=Integer.parseInt(spl[2]);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With