I'm not sure exactly what you're asking, but regex is one way to do it. You could also use String's indexOf and substring methods.
Regex (split) would be something like this:
str = str.replaceAll("^[^/]*/([^/]*)/.*$", "$1"); // Gets Indonesia
str = str.replaceAll("(^([^/]*/){2}[^/]*)/.*$", "$1") // Gets Ck/Indonesia/CDC25
http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html
http://www.regular-expressions.info/
If you want to separate text in between of the diagonal you can simply use the StringTokenizer class and use the diagonal as the separator.
StringTokenizer tokenizer = new StringTokenizer(XXX/YYY/ZZZ, "/");
and if you wish, you can do the following
String a = tokenizer.nextToken();
String b = tokenizer.nextToken();
String c = tokenizer.nextToken();
End of the story
Hi all,
I have long string looks like
Ck/IDN/PA/03
ATGAATCCAAATCAGAAGATAATAACCATTGGATCAATCTGTATGGTAATTGGAATAGTT
AGCTTAATGTTACAAATTGGGAACATGATCTCAATATGGGTCAGTCATTCAATTCAGACA
GGGAATCAACACCAAGCTGAATCAATCAGCAATACTAACCCTCTTACTGAGAAAGCTGTG
>Ck/IDN/BL/03
ATGAATCCAAATCAGAAGATAATAACCATTGGATCAATCTGTATGGTAATTGGAATAGTT
AGCGTAATGTTACAAATTGGGAACATGATCTCAATATGGGTCAGTCATTCAATTCAGACA
GGGAATCAACACCAAGCTGAATCAATCAGCAATACTAACCCTCTTACTGAGAAAGCTGTG
>Dk/IDN/MS/04
ATGAATCCAAATCAGAAGATAATAACCATTGGATCAATCTGTATGGTAATTGGAATAGTT
AGCTTAATGTTACAAATTGGGAACATGATCTCAATATGGGTCAGTCATTCAATTCAGACA
I use the following code to slice it to small file and store them into array, this part work fine
StringTokenizer tokens =new StringTokenizer(s,">");
while(tokens.hasMoreTokens()) {
MySec[i]=tokens.nextToken();
data=MySec[i];[code]
every small part of string looks like
[code]
>[b]Ck/IDN/2A/03[/b]
ATGGTAATTGGAATAGTT
AGCTTAATGTTACAAATTGGGAACATGATCTCAATATGGGTCAGTCATTCAATTCAGACA
GGGAATCAACACCAAGCTGAATCAATCAGCAATACTAACCCTCTTACTGAGAAAGCTGTG
GCTTCAGTAACATTAGCGGGCAATTCATCTCTTTGCCCCATTAGAGGATGGGCTGTACAC
I want the Name=Ck/IDN/2A/03 and loc =IDN(between first/ and second/)
word= after 03, those letter from ATGGTAATTGGAATAGTT........
how can I handleit?