Solved

analysing strings

Posted on 2002-07-23
7
178 Views
Last Modified: 2010-04-01
I have a string[240] and I want to search this string for several different words.  The words could be in any part of the string.
is there a function that will search the string for the specified word or do i need to create one?
0
Comment
Question by:Karls
7 Comments
 
LVL 2

Expert Comment

by:Serega
ID: 7171225
strstr can help you, I think...

strstr - Find a substring

char *strstr( const char *string, const char *strCharSet );

returns a pointer to the first occurrence of strCharSet in string, or NULL if strCharSet does not appear in string.
0
 
LVL 84

Expert Comment

by:ozo
ID: 7171228
#include <string.h>
char *strstr (const char *s1, const char *s2);
0
 
LVL 1

Expert Comment

by:himmya
ID: 7171657
hi,

 u can use find member from basic strings....

  string str("ur string over here");

  if(str.find("ur world")>=0)
       found the word in string

u can use the no of find just go through the documentation of find() overloaded versions...

i think this will help u ......

rgds,
himmya.
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Expert Comment

by:Sabnis
ID: 7171714
if you want the C-Style search then use the function above to locate the strings....within a for loop....or use a C++ style STL string class and use its member function find...again within a for loop
0
 
LVL 30

Expert Comment

by:Axter
ID: 7172748
Hi (himmya ), welcome to EE.

All of the experts here, for the most part have learn from other experts as to the proper etiquette for posting answer.

An answer should not be posted as an answer, if other experts have previously posted possible answers as comments, and/or have already made contributions to the question.

There are many experts who never post answers as answer.  Instead, they post their answers as comments.

If you read the following link, you'll see why this is the preferred method for many of our valued experts, including myself.

http://www.experts-exchange.com/jsp/cmtyQuestAnswer.jsp

Hi (Karls):
Feel free to click the [Reject Answer] button near (Answer-poster's) response, even if it seems like a good answer.
Doing so will increase your chance of obtaining additional input from other experts.  Later, you can click the [Select Comment as Answer] button on any response.
0
 
LVL 30

Accepted Solution

by:
Axter earned 50 total points
ID: 7172768
The following is example code using STL method

#include <string>
#include <iostream>


int main()
{
     std::string Source = "This is a test to see if this works";

     for(size_t i = Source.find("is");
               i != std::string::npos;
               i = Source.find("is", i+1))
     {
          std::cout << "Found key word at position " << i << std::endl;
     }
     
    return 1;
}

You should compare the return of string::find with std::string::npos in order to determind if the string was found.
A value of std::string::npos, means the string was not found.

To futher iterate through the string, pass a second argument to the string::find function, which tells the function the starting point for the new search.
0
 

Author Comment

by:Karls
ID: 7176225
Thats what I was looking for.
You don't actually need to do it in a for loop though.  will do the entire line.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

This article will show you some of the more useful Standard Template Library (STL) algorithms through the use of working examples.  You will learn about how these algorithms fit into the STL architecture, how they work with STL containers, and why t…
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…
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.
The viewer will be introduced to the member functions push_back and pop_back of the vector class. The video will teach the difference between the two as well as how to use each one along with its functionality.

910 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

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now