Check if a word is present in a sentence - GeeksforGeeks

20 Apr, 2022
Given a sentence as a string str and a word word, the task is to check if the word is present in str or not. A sentence is a string comprised of multiple words and each word is separated with spaces.Examples: 
Input: str = “Geeks for Geeks”, word = “Geeks” Output: Word is present in the sentence 
Input: str = “Geeks for Geeks”, word = “eeks” Output: Word is not present in the sentence 
Approach: In this algorithm, stringstream is used to break the sentence into words then compare each individual word of the sentence with the given word. If the word is found then the function returns true. Note that this implementation does not search for a sub-sequence or sub-string, it only searches for a complete single word in a sentence.Below is the implementation for the case-sensitive search approach: 
CPP
Java
Python
C#
Javascript
// C++ implementation of the approach#include <bits/stdc++.h>using namespace std; // Function that returns true if the word is foundbool isWordPresent(string sentence, string word){    // To break the sentence in words    stringstream s(sentence);     // To temporarily store each individual word    string temp;     while (s >> temp) {         // Comparing the current word        // with the word to be searched        if (temp.compare(word) == 0) {            return true;        }    }    return false;} // Driver codeint main(){    string s = "Geeks for Geeks";    string word = "Geeks";     if (isWordPresent(s, word))        cout << "Yes";    else        cout << "No";     return 0;}
// Java implementation of the approachclass GFG{ // Function that returns true if the word is foundstatic boolean isWordPresent(String sentence, String word){    // To break the sentence in words    String []s = sentence.split(" ");     // To temporarily store each individual word    for ( String temp :s)    {         // Comparing the current word        // with the word to be searched        if (temp.compareTo(word) == 0)        {            return true;        }    }    return false;} // Driver codepublic static void main(String[] args){    String s = "Geeks for Geeks";    String word = "Geeks";     if (isWordPresent(s, word))        System.out.print("Yes");    else        System.out.print("No"); }} // This code is contributed by PrinciRaj1992
# Python3 implementation of the approach # Function that returns true if the word is founddef isWordPresent(sentence, word):         # To break the sentence in words    s = sentence.split(" ")     for i in s:         # Comparing the current word        # with the word to be searched        if (i == word):            return True    return False # Driver codes = "Geeks for Geeks"word = "Geeks" if (isWordPresent(s, word)):    print("Yes")else:    print("No") # This code is contributed by mohit kumar 29
// C# implementation of the approachusing System; class GFG{ // Function that returns true if the word is foundstatic bool isWordPresent(String sentence, String word){    // To break the sentence in words    String []s = sentence.Split(' ');     // To temporarily store each individual word    foreach(String temp in s)    {         // Comparing the current word        // with the word to be searched        if (temp.CompareTo(word) == 0)        {            return true;        }    }    return false;} // Driver codepublic static void Main(String[] args){    String s = "Geeks for Geeks";    String word = "Geeks";     if (isWordPresent(s, word))        Console.Write("Yes");    else        Console.Write("No");}} // This code is contributed by 29AjayKumar
<script> // JavaScript implementation of the approach // Function that returns true if the word is foundfunction isWordPresent(sentence, word){     // To break the sentence in words    let s = sentence.split(" ");      // To temporarily store each individual word    for ( let temp=0;temp<s.length;temp++)    {          // Comparing the current word        // with the word to be searched        if (s[temp] == (word) )        {            return true;        }    }    return false;} // Driver codelet s = "Geeks for Geeks";let  word = "Geeks"; if (isWordPresent(s, word))        document.write("Yes");    else        document.write("No");  // This code is contributed by patel2127 </script>
Yes
 
Below is the implementation for the case-insensitive search approach:  
C++
Java
Python3
C#
Javascript
// C++ implementation of the approach#include <bits/stdc++.h>using namespace std; // Function that returns true if the word is foundbool isWordPresent(string sentence, string word){    // To convert the word in uppercase    transform(word.begin(),              word.end(), word.begin(), ::toupper);     // To convert the complete sentence in uppercase    transform(sentence.begin(), sentence.end(),              sentence.begin(), ::toupper);     // Both strings are converted to the same case,    // so that the search is not case-sensitive     // To break the sentence in words    stringstream s(sentence);     // To store the individual words of the sentence    string temp;     while (s >> temp) {         // Compare the current word        // with the word to be searched        if (temp.compare(word) == 0) {            return true;        }    }    return false;} // Driver codeint main(){    string s = "Geeks for Geeks";    string word = "geeks";     if (isWordPresent(s, word))        cout << "Yes";    else        cout << "No";     return 0;}
// Java implementation of the approachimport java.util.*; class GFG{ // Function that returns true if the word is foundstatic boolean isWordPresent(String sentence,                            String word){    // To convert the word in uppercase    word = transform(word);     // To convert the complete sentence in uppercase    sentence = transform(sentence);     // Both Strings are converted to the same case,    // so that the search is not case-sensitive     // To break the sentence in words    String []s = sentence.split(" ");     // To store the individual words of the sentence    for ( String temp :s)    {         // Comparing the current word        // with the word to be searched        if (temp.compareTo(word) == 0)        {            return true;        }    }    return false;} static String transform(String word){    return word.toUpperCase();} // Driver codepublic static void main(String[] args){    String s = "Geeks for Geeks";    String word = "geeks";     if (isWordPresent(s, word))        System.out.print("Yes");    else        System.out.print("No");}} // This code is contributed by PrinciRaj1992
# Python3 implementation of the approach # Function that returns true if the word is founddef isWordPresent(sentence, word) :         # To convert the word in uppercase    word = word.upper()     # To convert the complete sentence in uppercase    sentence = sentence.upper()     # Both strings are converted to the same case,    # so that the search is not case-sensitive     # To break the sentence in words    s = sentence.split();     for temp in s :         # Compare the current word        # with the word to be searched        if (temp == word) :            return True;     return False; # Driver codeif __name__ == "__main__" :     s = "Geeks for Geeks";    word = "geeks";     if (isWordPresent(s, word)) :        print("Yes");    else :        print("No"); # This code is contributed by AnkitRai01
// C# implementation of the approachusing System; class GFG{ // Function that returns true if the word is foundstatic bool isWordPresent(String sentence,                            String word){    // To convert the word in uppercase    word = transform(word);     // To convert the complete sentence in uppercase    sentence = transform(sentence);     // Both Strings are converted to the same case,    // so that the search is not case-sensitive     // To break the sentence in words    String []s = sentence.Split(' ');     // To store the individual words of the sentence    foreach ( String temp in s)    {         // Comparing the current word        // with the word to be searched        if (temp.CompareTo(word) == 0)        {            return true;        }    }    return false;} static String transform(String word){    return word.ToUpper();} // Driver codepublic static void Main(String[] args){    String s = "Geeks for Geeks";    String word = "geeks";     if (isWordPresent(s, word))        Console.Write("Yes");    else        Console.Write("No");}} // This code is contributed by 29AjayKumar
<script>// Javascript implementation of the approach // Function that returns true if the word is foundfunction isWordPresent(sentence,word){    // To convert the word in uppercase    word = transform(word);      // To convert the complete sentence in uppercase    sentence = transform(sentence);      // Both Strings are converted to the same case,    // so that the search is not case-sensitive      // To break the sentence in words    let s = sentence.split(" ");      // To store the individual words of the sentence    for ( let temp=0;temp<s.length;temp++)    {          // Comparing the current word        // with the word to be searched        if (s[temp] == (word))        {            return true;        }    }    return false;} function transform(word){    return word.toUpperCase();} // Driver codelet s = "Geeks for Geeks";let word = "geeks";if (isWordPresent(s, word))    document.write("Yes");else    document.write("No");   // This code is contributed by unknown2108</script>
Yes
 
As all the words in a sentence are separated by spaces.
We have to split the sentence by spaces using split().
We split all the words by spaces and store them in a list.
We use count() function to check whether the word is in array
If the value of count is greater than 0 then word is present in string
Below is the implementation:
Python3
Javascript
# Python3 implementation of the approach # Function that returns true# if the word is founddef isWordPresent(sentence, word):     # To convert the word in uppercase    word = word.upper()     # To convert the complete    # sentence in uppercase    sentence = sentence.upper()     # splitting the sentence to list    lis = sentence.split()    # checking if word is present    if(lis.count(word) > 0):        return True    else:        return False  # Driver codes = "Geeks for Geeks"word = "geeks"if (isWordPresent(s, word)):    print("Yes")else:    print("No") # This code is contributed by vikkycirus
<script> // JavaScript implementation of the approach // Function that returns true// if the word is foundfunction isWordPresent(sentence, word){     // To convert the word in uppercase    word = word.toUpperCase()     // To convert the complete    // sentence in uppercase    sentence = sentence.toUpperCase()     // splitting the sentence to list    let lis = sentence.split(' ')    // checking if word is present    if(lis.indexOf(word) != -1)        return true    else        return false} // Driver codelet s = "Geeks for Geeks"let word = "geeks"if (isWordPresent(s, word))    document.write("Yes","</br>")else    document.write("No","</br>") // This code is contributed by shinjanpatra </script>
Output:
Yes
mohit kumar 29
ankthon
princiraj1992
29AjayKumar
vikkycirus
patel2127
unknown2108
shinjanpatra
School Programming
Strings
Strings
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
C++ Classes and Objects
Interfaces in Java
Constructors in C++
Operator Overloading in C++
Polymorphism in C++
Write a program to reverse an array or string
Longest Common Subsequence | DP-4
C++ Data Types
Write a program to print all permutations of a given string
Check for Balanced Brackets in an expression (well-formedness) using Stack