#1 2. November 2009 Strings aus String erstellen Folgendes Problem: Ich habe einen String mit diesem aufbau: "g": "wert1", "h": "wert2", usw wie kann ich nun mit java bestimmte werte (z.B. wert10) rausfiltern ? + Multi-Zitat Zitieren
#2 2. November 2009 AW: Strings aus String erstellen Also du brauchst zuerstmal ein paar Integer Werte mit Zeichen wo man die Strings unterscheiden kann. BSP: String Admin assword Stelle 0123456789... Also dann guckst du an welcher Stelle sich der ":" befindet und kannst dann ab dem Wert bis zum Schluss bsp alles abspeichern.. Hab mal sowas gecodet um aus nem String im Format "192.168.178.25" jeden einzelnen IP Block einzeln als INT abzuspeichern da kannste mal reinschauen!:: Code: // String = 192.168.178.25 // Positionen 01234567890123 Punkte bei 3,7,11 int index1 = IP.indexOf(".", 0); // Erste Position des Punktes int index2 = IP.indexOf(".", index1 + 1);// Zweite Postition des Punktes int index3 = IP.indexOf(".", index2 + 1); // Dritte Postition des // Punktes // String = 192.168.178.25 block1 = Integer.parseInt(IP.substring(0, index1)); block2 = Integer.parseInt(IP.substring(index1 + 1, index2)); block3 = Integer.parseInt(IP.substring(index2 + 1, index3)); block4 = Integer.parseInt(IP.substring(index3 + 1)); System.out.println("calculated IP=" + block1 + "." + block2 + "." + block3 + "." + block4); + Multi-Zitat Zitieren
#3 2. November 2009 AW: Strings aus String erstellen nein damit kann ich das irgendwie nicht. ich versuche mich gerade übungsweise an einem youtubedownloader.. da bekomme ich nun so eine zeile, aus welcher ich aber nur bestimmte werte brauche: Code: 'SWF_ARGS':{"rv.7.length_seconds":"228","rv.6.author":"ArtisanNewsService","rv.0.length_seconds":"511","rv.4.thumbnailUrl":"http%3A%2F%2Fi2.ytimg.com%2Fvi%2F-WXGEn120pM%2Fdefault.jpg","fmt_url_map":"34%7Chttp%3A%2F%2Fv1.lscache7.c.youtube.com%2Fvideoplayback%3Fip%3D0.0.0.0%26sparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Calgorithm%252Cburst%252Cfactor%26fexp%3D903900%252C904012%26algorithm%3Dthrottle-factor%26itag%3D34%26ipbits%3D0%26burst%3D40%26sver%3D3%26expire%3D1257206400%26key%3Dyt1%26signature%3D1CF65226E72B8EF2EC05D7A54199203F700C565E.0C414961175905524850C034A5BBFFB872265234%26factor%3D1.25%26id%3D325ecef137dcfcf0%2C5%7Chttp%3A%2F%2Fv6.lscache8.c.youtube.com%2Fvideoplayback%3Fip%3D0.0.0.0%26sparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Calgorithm%252Cburst%252Cfactor%26fexp%3D903900%252C904012%26algorithm%3Dthrottle-factor%26itag%3D5%26ipbits%3D0%26burst%3D40%26sver%3D3%26expire%3D1257206400%26key%3Dyt1%26signature%3DD3232D20E8EEFC12C2EA2460E7F16AF82C7F78F1.5A3C1EEB532EB27127C7CC5770FCE558EDB88E30%26factor%3D1.25%26id%3D325ecef137dcfcf0","keywords":"Ocala%2Cmetalcore%2Cpost-hardcore%2Chard%2Crock%2Cindie%2Cmusic_video%2Cmusic%2Cvideo%2Cunderoath%2Cwriting%2Cwalls%2CKrankTV","rv.1.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DD01t_NpVJpQ","rv.3.rating":"4.88070456365","invideo":"True","tk":"qDeqM6WOkr0jg4UTnI71pZ3ONS8qy6J6zEoV_1m77CqzfWfWasdVZw%3D%3D","rv.5.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Dxu7aF_df6WU","rv.6.length_seconds":"204","ad_host":"ca-host-pub-1480745103456657","mpu":"True","rv.0.thumbnailUrl":"http%3A%2F%2Fi4.ytimg.com%2Fvi%2FGN57SsrZeQI%2Fdefault.jpg","rv.7.author":"chaserrr","rv.5.view_count":"2148621","rv.1.length_seconds":"222","rv.3.id":"7ltV-3IuDa8","rv.2.id":"1uin8Cphh1U","rv.2.length_seconds":"276","t":"vjVQa1PpcFMDHI6OR8XkP9enFvd4EvIDHH0vj-G02X4%3D","fexp":"903900%2C904012","allow_embed":"1","rv.2.rating":"4.85448613377","rv.6.title":"EVERY+TIME+I+DIE+AND+UNDEROATH+AT+2006+WARPED+TOUR+AT+KEY+CL","ad_logging_flag":"1","rv.1.thumbnailUrl":"http%3A%2F%2Fi1.ytimg.com%2Fvi%2FD01t_NpVJpQ%2Fdefault.jpg","length_seconds":"243","rv.4.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D-WXGEn120pM","rv.4.title":"UNDEROATH-++Too+Bright+to+See+Too+Loud+to+Hear","rv.5.thumbnailUrl":"http%3A%2F%2Fi1.ytimg.com%2Fvi%2Fxu7aF_df6WU%2Fdefault.jpg","watermark":"http%3A%2F%2Fs.ytimg.com%2Fyt%2Fswf%2Flogo-vfl106645.swf%2Chttp%3A%2F%2Fs.ytimg.com%2Fyt%2Fswf%2Fhdlogo-vfl100714.swf","rv.0.title":"UnderOath+-+A+Boy+Brushed+Red+Living+in+Black+and+White","rv.3.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7ltV-3IuDa8","rv.7.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DEE3hkZSlZ5s","rv.2.view_count":"1127093","rv.4.view_count":"39636","ad_module":"http%3A%2F%2Fs.ytimg.com%2Fyt%2Fswf%2Fad-vfl127675.swf","rv.1.view_count":"1430320","rv.5.title":"Underoath","rv.1.title":"The+Devil+Wears+Prada+-+%22Hey+John%2C+What%27s+Your+Name+Again%3F%22","rv.3.length_seconds":"239","rv.5.author":"lightsay","rv.2.thumbnailUrl":"http%3A%2F%2Fi2.ytimg.com%2Fvi%2F1uin8Cphh1U%2Fdefault.jpg","rv.0.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DGN57SsrZeQI","rv.0.view_count":"2116425","enablecsi":"1","rv.2.title":"Underoath+-+Some+Will+Seek+Forgiveness%2C+Others+Escape","rv.4.rating":"4.80303030303","rv.3.view_count":"556784","mpvid":"AAR3ZqYEjgLC5Bnc","cr":"DE","rv.6.thumbnailUrl":"http%3A%2F%2Fi4.ytimg.com%2Fvi%2FGdRcdDZmn0g%2Fdefault.jpg","host_language":"de","rv.7.id":"EE3hkZSlZ5s","rv.0.rating":"4.84228432564","rv.5.id":"xu7aF_df6WU","rv.0.id":"GN57SsrZeQI","cafe_experiment_id":"","rv.0.author":"lukeisaliar","rv.3.thumbnailUrl":"http%3A%2F%2Fi4.ytimg.com%2Fvi%2F7ltV-3IuDa8%2Fdefault.jpg","rv.2.author":"LeMoNaDe777","rv.6.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DGdRcdDZmn0g","fmt_map":"34%2F0%2F9%2F0%2F115%2C5%2F0%2F7%2F0%2F0","hl":"de","rv.5.length_seconds":"246","ad_channel_code_overlay":"invideo_overlay_480x70_cat10%2Cafv_overlay%2Cafv_user_blanktv%2CVidVert584%2CVidVert617%2Cyt_mpvid_AAR3ZqYEjgLC5Bnc%2Cytexp_903900.904012","rv.6.id":"GdRcdDZmn0g","rv.6.view_count":"116222","rv.3.author":"volcom801","rv.4.id":"-WXGEn120pM","video_id":"Ml7O8Tfc_PA","rv.4.author":"altitudetv","rv.7.thumbnailUrl":"http%3A%2F%2Fi2.ytimg.com%2Fvi%2FEE3hkZSlZ5s%2Fdefault.jpg","ad_host_tier":"31595","vq":"medium","rv.7.title":"Underoath+-+Writing+On+The+Walls+%2ADrums+Only%2A+8.28.07","rv.1.id":"D01t_NpVJpQ","rv.4.length_seconds":"86","rv.7.view_count":"697132","rv.3.title":"Underoath-+A+moment+suspended+in+time","plid":"AAR3ZqYEZcXt10TF","afv":"True","rv.5.rating":"4.7225647349","ad_tag":"http%3A%2F%2Fad-emea.doubleclick.net%2Fpfadx%2Fcom.ytpwatch.music%2Fmain_81%3Bsz%3DWIDTHxHEIGHT%3Bmpvid%3DAAR3ZqYEjgLC5Bnc%3B%21c%3D81%3Bk2%3D584%3Bk2%3D617%3Bytexp%3D903900.904012%3Bk3%3D584%3Bklg%3Dde%3Bkvid%3DMl7O8Tfc_PA%3Bkpu%3DBlankTV%3Bkr%3DA%3Bkt%3DK%3Bko%3Dp%3Bkpid%3D81%3Bkga%3D-1%3Bu%3DMl7O8Tfc_PA%7C81%3Bk4%3D617%3Bkgg%3D-1%3Bkcr%3Dde%3Bafv%3D1%3Bkhd%3D0%3Bdc_dedup%3D1%3Bshortform%3D1%3B","ad_video_pub_id":"ca-pub-6219811747049371","rv.1.author":"BlankTV","rv.1.rating":"4.72990990991","rv.7.rating":"4.84057971014","rv.2.url":"http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D1uin8Cphh1U","sw":"0.05","rv.6.rating":"4.59016393443","sk":"vSYTlUi9TbZz82TGLnSZszen2S8HQ9pRC"}, + Multi-Zitat Zitieren
#4 2. November 2009 AW: Strings aus String erstellen Naja es gibt doch die Methode split() in der String-Klasse. Kanns grade net testen, sollte so in der Art gehen: Code: String foo = "das:ist,ein:test"; String[] foo_split = foo.split(","); Dann hast du ein Array (foo_split), das so aussieht: Code: foo_split[0] = "das:ist" foo_split[1] = "ein:test" Wenn du das ganze dann wieder anhand von ":" splittest, kommst du an die einzelnen Strings.. // Ich seh grade, dass String.split() mit regulären Ausdrücken arbeitet. Beim "," ist das kein Problem, aber spezielle Zeichen musst du mittels \\ escapen, beispielsweise den Punkt: foo.split("\\.");. + Multi-Zitat Zitieren
#5 3. November 2009 AW: Strings aus String erstellen tach, der string den du da hast is im JSON-format, such dir einfach nen parser und fertig. + Multi-Zitat Zitieren
#6 3. November 2009 AW: Strings aus String erstellen und es würde trotzdem mit meiner Methode klappen! Du brauchst ja nicht nur nach einfachen Zeichen zu suchen, wie in meinem Beispiel! Sondern kannst auch so suchen: Code: int index1 = IP.indexOf("length_seconds", 0); Dann musst du n och ein paar Stellen dazu addieren damit du auf den richtigen Wert beispielsweise kommst.. + Multi-Zitat Zitieren
#7 3. November 2009 AW: Strings aus String erstellen einfach Code: String text="der text von oben"; String tempString; tempString=text.substring(text.indexOf("rv.1.url")); String rv1url=tempString.substring(tempString.indexOf(":")+2, tempString.indexOf(",")-1); bei vielen werten die du brauchst einfach nen Stringarray, schleife mit ner switch case abfrage von den jewiligen werten die du wissen willst....fertig also so ungefähr Code: int werteAnzahl=12; String[] werteArray=new String[werteAnzahl]; String tempString,wert; for (int i=0;i<werteAnzahl;i++) { switch(i) { case 0: wert="rv.1.url"; break; case 1: wert="rv.0.length_seconds"; break; //usw } tempString=text.substring(text.indexOf("rv.1.url")); werteArray[i]=tempString.substring(tempString.indexOf(":")+2, tempString.indexOf(",")-1); } noch einfacher wärs nen parser zu besorgen + Multi-Zitat Zitieren