早上看到一些域名不错,给自己的博客用个http://www.dotnetblog.cn/也是不错的选择,不过自己玩米也玩了很久也知道自己几乎不太可能抢到的,预定的话注册商规定第一个预定的只要5元,第二个以后要50元,当然速度第一了,注册商还没开始预定列表出来CNNIC的列表就提早一个多小时出炉了,可是那里域名很杂,.ac.cn和.net.cn还有.com.cn这些域名现在都不需要,如何找出自己要的cn域名呢?
自己写了个简单的c#程序,主要是读取CNNIC远程的txt的删除域名列表,然后按照自己要的域名修改查询表达式就ok了,不是很完整,能够找出指定后缀和长度还有数字和字母的一些判断
如果你在本地的话修改分隔符"\n"为"\r\n",不过直接修改网址就ok,其他的大家自己看着修改就可以用了,应急还是可以,下次做个完整的。
还有要解决的是拼音和英文字母判断还有读取pr的值等有空再做,那些我是不太需要,好的域名一眼就看得出来的,O(∩_∩)O哈哈~。
正则表达式:http://www.regexlib.com/REDetails.aspx?regexp_id=2851
删除域名程序
protected
void
Button1_Click(
object
sender, EventArgs e)
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create( " http://www.cnnic.cn/download/registar_list/future2todayDel.txt " );
HttpWebResponse rep = (HttpWebResponse)req.GetResponse();
Stream stm = rep.GetResponseStream();
StreamReader strread = new StreamReader(stm,System.Text.Encoding.UTF8);
string strtmp = strread.ReadToEnd().Trim();
string [] strp = Regex.Split(strtmp, @" \n " );
string [] dong = new string [strp.Length];
for ( int i = 0 ; i < strp.Length; i ++ )
{
dong[i] = strp[i].Trim( new char [] { ' [ ' , ' ] ' });
}
string [] dong2 = new string [dong.Length];
for ( int i = 0 ; i < dong.Length; i ++ )
{
if (Regex.IsMatch(dong[i], @" ^[a-zA-Z0-9\-]+\.cn$ " ))
{
dong2[i] = dong[i];
}
else
{
dong2[i] = " no " ;
}
}
var dong6 = from m in dong2 orderby m.Length where m != " no " select m;
GridView1.DataSource = dong6;
GridView1.DataBind();
strread.Close();
}
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create( " http://www.cnnic.cn/download/registar_list/future2todayDel.txt " );
HttpWebResponse rep = (HttpWebResponse)req.GetResponse();
Stream stm = rep.GetResponseStream();
StreamReader strread = new StreamReader(stm,System.Text.Encoding.UTF8);
string strtmp = strread.ReadToEnd().Trim();
string [] strp = Regex.Split(strtmp, @" \n " );
string [] dong = new string [strp.Length];
for ( int i = 0 ; i < strp.Length; i ++ )
{
dong[i] = strp[i].Trim( new char [] { ' [ ' , ' ] ' });
}
string [] dong2 = new string [dong.Length];
for ( int i = 0 ; i < dong.Length; i ++ )
{
if (Regex.IsMatch(dong[i], @" ^[a-zA-Z0-9\-]+\.cn$ " ))
{
dong2[i] = dong[i];
}
else
{
dong2[i] = " no " ;
}
}
var dong6 = from m in dong2 orderby m.Length where m != " no " select m;
GridView1.DataSource = dong6;
GridView1.DataBind();
strread.Close();
}