Solved

Easy question about breaking apart strings

Posted on 2005-05-03
13
221 Views
Last Modified: 2010-03-31
In PHP there is a function to explode a string to where if there is white space it will break each word out into an array.  How would I do that in java?

So say I have a string come in with "red condor fly" and I need to get "red" "condor" "fly" how would I get those three words seperated, or actually x number of words.
0
Comment
Question by:filament90
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 6
13 Comments
 
LVL 37

Expert Comment

by:zzynx
ID: 13917366
use split()
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 13917369
String[] tokens = s.split(" ");
0
 
LVL 37

Accepted Solution

by:
zzynx earned 250 total points
ID: 13917376
String parts[] = "red condor fly".split("\\s+");
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 37

Expert Comment

by:zzynx
ID: 13917426
If you have the string "red   condor fly"
with
>> String[] tokens = s.split(" ");
You'll have
- tokens[0] = "red"
- tokens[1] = ""
- tokens[2] = ""
- tokens[3] = "condor"
- tokens[4] = "fly"

with

>> String parts[] = s.split("\\s+");
you'll have
- parts[0] = "red"
- parts[1] = "condor"
- parts[2] = "fly"


0
 
LVL 37

Expert Comment

by:zzynx
ID: 13917436
Remark: split() is available since 1.4
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 13917453
No you won't have that with split(" ") ;-)
0
 
LVL 9

Expert Comment

by:cyberdevil67
ID: 13917460
Hi filament90,

 As everyone else has said but here is more info on the subject http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html

Cheers!
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 13917469
If you're unfortunate enough to be stuck with Java < 1.4 then use java.util.StringTokenizer
0
 
LVL 37

Expert Comment

by:zzynx
ID: 13917480
Well, I just tested...

        String tokens[] = "red   condor fly".split(" ");
        for (int i=0; i<tokens.length; i++)
            System.out.println("<" + tokens[i] + ">");

prints out:

<red>
<>
<>
<condor>
<fly>
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 13917502
On my machine:

System.out.println("red condor fly".split(" ").length);

prints

3
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 13917519
I see what you're saying. If you have unequal spaces, yes.
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 13917528
(and you want that fact to be ignored)
0
 
LVL 37

Expert Comment

by:zzynx
ID: 13917667
Thanks for accepting, flament90

>> I see what you're saying. If you have unequal spaces, yes.
>> (and you want that fact to be ignored)
Exactly ;°)
0

Featured Post

Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.
Suggested Courses

632 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question