Open In App

Program to extract words from a given String

Improve
Improve
Like Article
Like
Save
Share
Report

The task is to extract words from a given string. There may be one or more space between words.

Examples: 

Input : geeks for geeks
Output : geeks
         for
         geeks

Input : I love   coding.
Output: I 
         love
         coding

We have discussed a solution in the below post. 
How to split a string in C/C++, Python and Java?

In this post, a new solution using stringstream is discussed. 

1. Make a string stream.
2. extract words from it till there are still words in the stream.
3. Print each word on new line.

This solution works even if we have multiple spaces between words. 

C++




// C++ program to extract words from
// a string using stringstream
#include<bits/stdc++.h>
using namespace std;
 
void printWords(string str)
{
    // word variable to store word
    string word;
 
    // making a string stream
    stringstream iss(str);
 
    // Read and print each word.
    while (iss >> word)
        cout << word << endl;
}
 
// Driver code
int main()
{
    string s = "sky is blue";
    printWords(s);
    return 0;
}


Java




// A Java program for splitting a string
// using split()
import java.io.*;
class GFG
{
    // Method splits String into
    // all possible tokens
    public static void printWords(String s)
    {    
        // Using split function.
        for (String val: s.split(" "))
         
            // printing the final value.
            System.out.println(val);
    }
     
    // Driver Code
    public static void main(String args[])
    {
        // Sample string to check the code
        String Str = "sky is blue";
         
        // function calling
        printWords(Str);
    }
}
 
// This code is contributed
// by Animesh_Gupta


Python3




# Python3 program to extract words from
# a string
def printWords(strr):
    word = strr.split(" ")
    print(*word, sep="\n")
 
# Driver code
s = "sky is blue"
printWords(s)
 
# This code is contributed by shubhamsingh10


C#




// A C# program for splitting a string
// using split()
using System;
class GFG
{
    // Method splits String into
    // all possible tokens
    public static void printWords(String s)
    {    
        // Using split function.
        foreach(String val in s.Split(" "))
         
            // printing the final value.
            Console.WriteLine(val);
    }
     
    // Driver Code
    static public void Main ()
    {
        // Sample string to check the code
        String Str = "sky is blue";
         
        // function calling
        printWords(Str);
    }
}
 
// This code is contributed
// by shivanisingh


Javascript




<script>
 
// A Javascript program for splitting
// a string using split()
 
// Method splits String into
// all possible tokens
function printWords(s)
{   
    s = s.split(" ");
    for(let val = 0; val < s.length; val++)
    {
        document.write(s[val] + "</br>");
    }
}
 
// Driver code
 
// Sample string to check the code
let Str = "sky is blue";
 
// function calling
printWords(Str);
 
// This code is contributed by divyeshrabadiya07
 
</script>


Output: 

sky
is
blue

Time complexity: O(n) where n is size of input string, since using a while loop

Auxiliary Space: O(1)

 



Last Updated : 18 Apr, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads