Thread View: pl.comp.lang.java
6 messages
6 total messages
Started by MarekF
Thu, 04 Oct 2012 13:43
Split delimiter
Author: MarekF
Date: Thu, 04 Oct 2012 13:43
Date: Thu, 04 Oct 2012 13:43
20 lines
1652 bytes
1652 bytes
Witam
Chce rozbic stringa do tablicy. W tablicy ma byc tylko to w nawiasach i
jest, tylko czy mozna tak skonstruowac delimitera, zebo to zrobil od razu a
nie w 3 splitach
Dzialajacy kod:
String produkt = "Produkt=new produkty(Produkt,0.8,0.2,11.8,41, 7 ,1)";
//String delimiter = "[(]";
String[] myString = produkt.split("[(]");
System.out.println(myString[1]);
//wynik Produkt,0.8,0.2,11.8,41, 7 ,1)
String temp = myString[1];
String[] temp1= temp.split("[)]");
System.out.println(temp1[0]);
//Wynik Produkt,0.8,0.2,11.8,41, 7 ,1
String temp2 = temp1[0];
String[] temp3 = temp2.split("[,]");
System.out.println(temp3[0]);
//wynik Produkt
Pozdrawiam
MarekF
Re: Split delimiter
Author: mmarczyk2
Date: Thu, 04 Oct 2012 19:17
Date: Thu, 04 Oct 2012 19:17
49 lines
2292 bytes
2292 bytes
On Thursday, October 4, 2012 3:43:58 PM UTC+2, MarekF wrote:
> Witam
>
> Chce rozbic stringa do tablicy. W tablicy ma byc tylko to w nawiasach i
>
> jest, tylko czy mozna tak skonstruowac delimitera, zebo to zrobil od razu a
>
> nie w 3 splitach
>
> Dzialajacy kod:
>
> String produkt = "Produkt=new produkty(Produkt,0.8,0.2,11.8,41, 7 ,1)";
>
> //String delimiter = "[(]";
>
> String[] myString = produkt.split("[(]");
>
> System.out.println(myString[1]);
>
> //wynik Produkt,0.8,0.2,11.8,41, 7 ,1)
>
> String temp = myString[1];
>
> String[] temp1= temp.split("[)]");
>
> System.out.println(temp1[0]);
>
> //Wynik Produkt,0.8,0.2,11.8,41, 7 ,1
>
> String temp2 = temp1[0];
>
> String[] temp3 = temp2.split("[,]");
>
> System.out.println(temp3[0]);
>
> //wynik Produkt
>
> Pozdrawiam
>
> MarekF
Wykorzystaj wyrażenia regularne, na przykład tak:
String produkt = "Produkt=new produkty(Produkt,0.8,0.2,11.8,41, 7 ,1)";
System.out.println(produkt.replaceAll(".*\\(", "").replaceAll(",.*", ""));
Albo przy uzyciu Named Groups (więcej w tym wątku http://stackoverflow.com/questions/415580/regex-named-groups-in-java)
Marcin
Re: Split delimiter
Author: jolz
Date: Thu, 04 Oct 2012 23:00
Date: Thu, 04 Oct 2012 23:00
3 lines
1138 bytes
1138 bytes
jesli koniecznie musi byc jedna metoda:
produkt.split(".*\\(|,|\\)")
i wyobraz sobie ze tablica zaczyna sie od pierwszego elementu
Re: Split delimiter
Author: MarekF
Date: Fri, 05 Oct 2012 04:13
Date: Fri, 05 Oct 2012 04:13
19 lines
1675 bytes
1675 bytes
Użytkownik <mmarczyk2@gmail.com> napisał w wiadomości
news:33cda62d-66ce-4786-a067-fbd58da7ac79@googlegroups.com...
On Thursday, October 4, 2012 3:43:58 PM UTC+2, MarekF wrote:
Wykorzystaj wyrażenia regularne, na przykład tak:
String produkt = "Produkt=new produkty(Produkt,0.8,0.2,11.8,41, 7 ,1)";
System.out.println(produkt.replaceAll(".*\\(", "").replaceAll(",.*", ""));
Albo przy uzyciu Named Groups (więcej w tym wątku
http://stackoverflow.com/questions/415580/regex-named-groups-in-java)
Marcin
-----
Witam
To daje wynik : Produkt
Przyda sie.
Pozdrawiam
MarekF
Re: Split delimiter
Author: MarekF
Date: Fri, 05 Oct 2012 04:24
Date: Fri, 05 Oct 2012 04:24
15 lines
1564 bytes
1564 bytes
Użytkownik "jolz" <BardzoTajneKonto@interia.pl> napisał w wiadomości
news:k4l4es$uq3$1@usenet.news.interia.pl...
> jesli koniecznie musi byc jedna metoda:
> produkt.split(".*\\(|,|\\)")
> i wyobraz sobie ze tablica zaczyna sie od pierwszego elementu
>
Witam
Wlasnie o tym myslalem, tylko nie wiedzialem jak to skonstruowac.
Przy okazji, dlaczego zerowy element tablicy jest pusty? Czy za to odpowiada
".*
Ok, juz sprawdzilem, bez ".* w zerowym jest to co mial odciac.
Dzieki
Pozdrawiam
MarekF
Re: Split delimiter
Author: William Bonawentura
Date: Fri, 05 Oct 2012 05:17
Date: Fri, 05 Oct 2012 05:17
8 lines
1233 bytes
1233 bytes
> Chce rozbic stringa do tablicy. W tablicy ma byc tylko to w nawiasach i A ma to rozwiązanie być odporne na zagnieżdżone nawiasy: String produkt = "Produkt=new produkty(Produkt,0.8,0.2,11.8,41, (7+2) ,1)"; ?
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads