добавляет алгоритм извлечения адресов
This commit is contained in:
parent
74fcb05890
commit
37d21c5f43
@ -46,6 +46,7 @@
|
|||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="ExtactEmailsAlgorithm.cs" />
|
||||||
<Compile Include="MainForm.cs">
|
<Compile Include="MainForm.cs">
|
||||||
<SubType>Form</SubType>
|
<SubType>Form</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
29
ExtactEmailsAlgorithm.cs
Normal file
29
ExtactEmailsAlgorithm.cs
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
|
|
||||||
|
namespace AwesomeEmailExtractor
|
||||||
|
{
|
||||||
|
internal class ExtactEmailsAlgorithm
|
||||||
|
{
|
||||||
|
public static int Extract(string inputText, out List<string> uniqueEmails)
|
||||||
|
{
|
||||||
|
// Регулярное выражение для поиска почтовых адресов
|
||||||
|
string pattern = @"\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b";
|
||||||
|
|
||||||
|
// Находим каждый почтовый адрес в тексте
|
||||||
|
var matches = Regex.Matches(inputText, pattern, RegexOptions.IgnoreCase);
|
||||||
|
|
||||||
|
// Получаем количество найденных адресов
|
||||||
|
int countMatches = matches.Count;
|
||||||
|
|
||||||
|
// Получаем уникальные почтовые адреса
|
||||||
|
uniqueEmails = matches.Cast<Match>().Select(m => m.Value).Distinct().ToList();
|
||||||
|
|
||||||
|
return countMatches;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user