mr_*_*air 4 .net c# string visual-studio-2010
我想在之间提取电子邮件ID < >
例如.
输入字符串: "abc" <abc@gmail.com>; "pqr" <pqr@gmail.com>;
输出字符串: abc@gmail.com;pqr@gmail.com
string input = @"""abc"" <abc@gmail.com>; ""pqr"" <pqr@gmail.com>;";
var output = String.Join(";", Regex.Matches(input, @"\<(.+?)\>")
.Cast<Match>()
.Select(m => m.Groups[1].Value));
Run Code Online (Sandbox Code Playgroud)
没有正则表达式,你可以使用这个:
public static string GetStringBetweenCharacters(string input, char charFrom, char charTo)
{
int posFrom = input.IndexOf(charFrom);
if (posFrom != -1) //if found char
{
int posTo = input.IndexOf(charTo, posFrom + 1);
if (posTo != -1) //if found char
{
return input.Substring(posFrom + 1, posTo - posFrom - 1);
}
}
return string.Empty;
}
Run Code Online (Sandbox Code Playgroud)
进而:
GetStringBetweenCharacters("\"abc\" <abc@gmail.com>;", '<', '>')
你会得到
abc@gmail.com
| 归档时间: |
|
| 查看次数: |
21220 次 |
| 最近记录: |