服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - ASP.NET教程 - .NET读取所有目录下文件正则匹配文本电子邮件

.NET读取所有目录下文件正则匹配文本电子邮件

2019-06-18 10:40网络 ASP.NET教程

由于最近在业务上的需要,利用.NET把一个文件夹下面的所有文件读取,然后从文件中正则匹配出所有的电子邮件,然后写入到一个新的文件夹,需求就这样,很简单。代码写作也不超过10min,发上来吧。哈哈

代码如下:


using System; 
using System.Collections.Generic; 
using System.Text; 
using System.IO; 
using System.Text.RegularExpressions; 
namespace Test 

class FiEmail 

public static void Main(string[] args) { 
Console.WriteLine("请输入内容路径:"); 
string[] fs=Directory.GetFiles(args[0]); 
if(fs!=null){ 
string jobsPattern=@"([\w-]+(\.\w+)*@([\w-]+\.)+\w{2,3})"; 
Regex rx = new Regex(jobsPattern,RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.Multiline ); 
foreach(string s in fs){ 
Console.WriteLine("匹配"); 
string asR=File.ReadAllText(s); 
MatchCollection matches = rx.Matches(asR); 
if(matches!=null && matches.Count>0) { 
string argsP=""; 
for(int loopI=0;loopI<matches.Count;loopI++){ 
argsP+=(matches[loopI].Groups[0].Value)+Environment.NewLine ; 

W(argsP.Trim(new char[]{'\n'})); 

Console.WriteLine(s); 


Console.ReadLine(); 

public static void W(string ids){ 
string paths=System.IO.Path.Combine(@"C:\Documents and Settings\Administrator\桌面\GC\","edel.txt"); 
using (System.IO.StreamWriter sr = new System.IO.StreamWriter(paths,true)){ 
sr.WriteLine(ids); 



}


然后csc编译,生成f.exe文件。然后就可以使用了。 
里面牵扯到的技术要点: 
1: C# 读取文件夹下所有文件 
2:C# 利用正则获取文件中的邮址 
3:C#文件写入。 
完毕。

延伸 · 阅读

精彩推荐