tags:

views:

252

answers:

4

If I have a string "Param1=value1;Param2=value2;Param3=val3", how can I get the value between the substrings "Param2=" and the next semicolon (or end of string, whichever comes first)?"

+3  A: 

/Param2=([^;]+)/

Martijn Laarman
+1  A: 

"Param\d+=([^;]*)" will capture the contents between = and ; in group 1

Arnshea
A: 

You can either use a character class that excludes ; (as others have answered), or you can use a non-greedy match anything:

/Param2=(.*?);/
Chas. Owens
A: 

You can use this string to place all of the values into the Matches collection of the Regex class

string regex = "Param[0-9]*?=(?<value>.*?)(;|$)"
Jeremy