I\'m looking for a regular expression which will perform the following:
INPUT: User Name (email@address.com)
OUTPUT: User Name
What would b
This should do the job:
var input = "User Name (email@address.com)";
var output = Regex.Replace(input, @" ?\(.*?\)", string.Empty);
Note the escaping of the (
and )
chars so that they aren't recognised as group markers.
Did you mean you want the user name output, rather than the email address? For either case, you don't need regexes. For example, assuming the input is always well-formed and hence leaving out any error checking,
string output = input.Substring(0, input.IndexOf(" ("))
will get you the user name. And if you did want the email address, that too is available without resorting to regexes:
int n;
string output = input.Substring(n = 1 + input.IndexOf('('),
input.IndexOf(')') - n)
I'm just offering another way to do this, although I would just use regex myself as this is clunky:
string output = input.Split('(')[0].TrimEnd();