いくつかのテキストの中に次の形式のメールアドレスがsometext@mail.com
あります。@ mail.comは常に同じ形式であり、一部のテキストが変更されています。テキスト内でsometext@mail.comを一致させるにはどうすればよいですか。
質問する
112 次
2 に答える
0
これは些細なことではなく、使用する正規表現に関係なく、コーナーケースで誤った一致で終了する傾向がありますが、最初の概算として、私は提案します
\b\S+@mail\.com\b
これはスペースを含むメールアドレスとは一致しませんが、アドレスの前後の句読点を"(sometext@mail.com)"
正しく処理します(のように)。
于 2013-01-16T11:55:25.667 に答える
0
必要なものは次のとおりです。
\b[_a-z0-9-]+(\.[_a-z0-9-]+)*@mail\.com\b
編集: (PCでテストしたところ、動作します)
using System.Text.RegularExpressions;
string body = "hgfhfghgfhfhh fdfdf@mail.com gfhhfhf";
Match match = Regex.Match(body, @"\b[_a-z0-9-]+(\.[_a-z0-9-]+)*@mail\.com\b",
RegexOptions.IgnoreCase);
if (match.Success) {
// Finally, we get the Group value and display it.
string key = match.Groups[1].Value;
Console.WriteLine(key);
}
于 2013-01-16T11:56:28.393 に答える