String contains another two strings

Winkz picture Winkz · Apr 16, 2013 · Viewed 135.1k times · Source

Is it possible to have the contain function find if the string contains 2 words or more? This is what I'm trying to do:

string d = "You hit someone for 50 damage";
string a = "damage";
string b = "someone";
string c = "you";

if(d.Contains(b + a))
{   
    Console.WriteLine(" " + d);
    Console.ReadLine();
}

When I run this, the console window just shuts down really fast without showing anything.

And another question: if I for one want to add how much damage is done, what would be the easiest way to get that number and get it into a TryParse?

Answer

Brian Dishaw picture Brian Dishaw · Apr 16, 2013

You would be better off just calling Contains twice or making your own extension method to handle this.

string d = "You hit someone for 50 damage";
string a = "damage";
string b = "someone";
string c = "you";

if(d.Contains(a) && d.Contains(b))
{
   Console.WriteLine(" " + d);
   Console.ReadLine();
}

As far as your other question, you could build a regular expression to parse the string to find 50 or if the string is always the same, just split it based on a space and get the 5th part.