Solved

Easy question about breaking apart strings

Posted on 2005-05-03
13
217 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
  • 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
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 
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

Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
HSSFWorkbook cannot be resolved error 10 70
servlet doXXX methods 3 49
map related example 6 48
Error in @AspectJ Based AOP with Spring 2 13
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
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.
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:

778 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