[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理如何提取顶级域名网址,去掉二级域名网址?

嘛  先解释下什么叫顶级域名好了。。http://bathome.net/就是顶级域名    http://pichuli.bathome.net/就是二级域名   http://bathome.net/post.php?action=newthread&fid=5 内页域名

下面这份网址列表希望各位大大能帮忙弄个批批处理 要求如下= =

1:去掉二级域名(整条网址)的数据 只保留一级域名的网址  整条网址的意思举个例子 比如 http://abraham.madblogs.net/ 就是madblogs.net的二级域名  http://abraham.madblogs.net/就直接判断为二级域名 整条都去掉
需要特别注意的是 有些比较特殊的域名后缀有2个 比如.co.uk     举例http://saintclassified.co.uk/ 这种网址不是二级域名而是顶级域名   

二级域名的特性一般都是 自己定义的二级网址名 比如blog.com   我注册了个pichuli.blog.com这样的。。。  二级域名的意思就好比我门注册新浪博客 可以给自己的博客添加个URL作为自己博客特殊的URL。。。。不知道我这样叙述各位大大能否明白。。

2:去掉二级域名的网址另保存一个TXT 并且命名TXT文本为二级域名

3:去掉带内页的网址数据    http://aaliyah-miller.blogspot.com/2010/08/ 比如这样的。。

4: 如果可以的话 顺便把 http://去掉 (好吧!我承认我懒了)

以下是要处理的网址数据 我传份TXT(杯具提示太大传不了)  简单的来讲 就是 去掉二级域名的网址 去掉内页的网址  只保留https://shoeparlor.com/ 这种顶级域名


http://a8lumenpsychic.com/
http://a9j1ix8wvdyv.blogdiario.com/
http://aadam.burberrybargain.com/
http://aaliyah-miller.blogspot.com/2010/08/
http://a-andersen.suite101.com/
http://aarondet.blogg.se/2012/february/
http://abbyha.blogfa.com/
http://abercrombieandfitch.lamula.pe/tag/
http://abercrombieuk001.bloggr.no/
http://aberdeen.saintclassified.co.uk/
http://abner.wpat.net/
http://abraham.madblogs.net/
http://abrandstore.com/
http://abs-eyewear.blogspot.com/2012/04/
http://ac33csdvcf.blogspot.com/2011/06/
http://accessorydesigning.dalin-ina.com/
http://accidentalbear.com/
http://acmp-ce.org.br/
http://acrpasanx65j.blogdiario.com/
http://action.peta.org.uk/ea-campaign/
http://adam.coachlocations.com/
http://adam1972.obolog.com/
http://adan.mbt-menszone.com/ugg-shoes/
http://adco.olx.com/
http://add632.blogspot.com/2012/02/
http://adeline.myqblog.com/note/5638/
http://adm.elle.com.ua/elle-tv/moda/
http://adobephotoshophelp.com/qa/
http://adress126.mosaicglobe.com/
http://adspakistani.com/
http://adults1982.tradea.org/90624/
http://ae.burberry.com/store/
http://ae.burberry.com/store/acoustic/
http://aebjnedt.exteen.com/20110325/
http://ael-moussa.blogspot.com/2012/02/
http://afbundledap.blogspot.com/2012/04/
http://afpa.hooxs.com/
http://afroclick.info/
http://ageeklife.com/
http://agghdsdm6.pib.ir/1417342/
http://agilewizard.org/blogs/entry/
http://agora.sspa.it/
http://agtechfund.com/burberry-online/
http://agustinmccoy615.skyrock.com/
http://ahdhy.over-blog.com/
http://ahga.org/sites.php/
http://ailsa.oggix.org/
http://aimedieu.com/node/
http://aimgroupinc.com/
http://alexamulberrybags.ek.la/
http://alexissuitcase.shoprw.com/
http://alianzaarboles.org/pg/view/
http://aliasghar.montadamoslim.com/
http://aliceblog.myblog.it/tag/
http://alinasmith.blogg.se/2011/december/
http://alleen.winterclothesale.com/
http://allegro.pl/
http://allentown.craigslist.org/jwl/
http://all-free-download.com/free-vector/
http://allhealthcare.monster.com/careers/
http://allhealthcare.monster.com/education/
http://alternativealumni.com/content/
http://alternativeenergymutualfunds.org/
http://alumni.esaunggul.ac.id/forum/
http://alustrong-alumin.manufacturer.com/
http://alwaysdirect.com.au/
http://amardelplata.com/sitio/blogs/entry/
http://amazingspeeches.com/read_blog/2688/
http://amazonburberrybags.com/
http://amazonburberrybags.com/blog/

回复 16# yiduancang


    你需要告诉人家哪里不正确,然后请人家帮忙修改代码。而不是简单说一句不行

TOP

回复 15# sz1121

不然还可以用什么

TOP

回复 14# gawk

方案1 2 提取出来的结果不正确   3、、、、用不了 提示无法读取A这个文本

TOP

为什么要用批处理呵呵

TOP

回复 11# yiduancang


    你先说能不能用,然后再求指点。

TOP

回复 12# apang

  顶级域名有2种意思  一种是国家级域名 比如我朝.CN  法国.FR 日本.JP 等等。。。。第二种意思就是网站的一级域名  事实上 标准规范的说法应该是一级域名。。。。一级域名(即顶级域名)只有一个点 这种说法早就过时了。。。原因只能怪老外乱来。。。如果这种没办法判断的话 那大大可否麻烦下 帮我加入个事先去掉http://和www.  要注意的是  有的是 http://+网址  有的是http://+www.+网址

TOP

回复  apang    粗大事了。。。 测下了下代码 基本OK 但是有2个大问题  一个是 要是顶级域名带WWW会被判断为 ...
yiduancang 发表于 2012-4-11 23:17


照这样说来,很难找到合适的规律了,那不好办呢。。。

但百度百科顶级域名是这样解释的http://baike.baidu.com/view/119298.htm

TOP

回复 9# CrLf



这位大侠  在下看不懂你的3个方案分别代表  能否指点下。。

TOP

回复 8# apang    粗大事了。。。 测下了下代码 基本OK 但是有2个大问题  一个是 要是顶级域名带WWW会被判断为二级域名  比如 https://www.backinaction.co.uk/这样    第二个就更郁闷了 http://at.mbt.com/      和http://bmh.posterous.com/这种其实是顶级域名的。。但是被判断为二级域名
  第一个WWW的 好办 文本替换掉就好(替换到卡挂的泪奔 希望还是能加进批处理搞定) 第二个问题就不知道大大有没有办法解决了

TOP

方案一,delims:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=2,3 delims=/" %%a in (a.txt) do (
  3. if "%%b"=="" echo %%a
  4. )
  5. pause
复制代码
方案二,上级路径:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in (a.txt) do (
  3. for /f "tokens=1,2" %%b in ("%%a.. %%a@\..") do if %%~nxb==http: echo %%~nxc
  4. )
  5. pause
复制代码
方案三,findstr:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('findstr /v "\//[^/]*/." a.txt') do (
  3. for %%b in (%%a@\..) do echo %%~nxb
  4. )
  5. pause
复制代码
1

评分人数

    • yiduancang: 虽然测试不可用 但是还是感谢辛苦写的代码技术 + 1

TOP

回复 7# yiduancang

可以,但代码有点啰嗦
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1-3* delims=/" %%i in ('type a.txt') do (
  3.   if "%%k"=="" (
  4.     for /f "tokens=1-3 delims=." %%a in ("%%j") do (
  5.       if "%%c"=="" (echo %%i//%%a.%%b/>>顶级域名.txt
  6.       ) else (
  7.         set str1=%%b&set str2=%%c
  8.         if "!str1:~2!"=="" (
  9.           if "!str2:~2!"=="" (echo %%i//%%a.%%b.%%c/>>顶级域名.txt
  10.           ) else echo %%i//%%a.%%b.%%c/>>二级域名.txt
  11.         ) else echo %%i//%%a.%%b.%%c/>>二级域名.txt
  12.       )
  13.     )
  14.   )
  15. )
复制代码

TOP

测试了下 只能提取顶级域名 没办法把去掉的二级域名另外保存个TXT吗

TOP

回复 5# apang

不管行不行 都十分感谢大大仗义出手相救

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "tokens=1-3* delims=/" %%i in ('type a.txt') do (
  3.   if "%%k"=="" (
  4.      for /f "tokens=1-3 delims=." %%a in ("%%j") do (
  5.        if "%%c"=="" (echo %%i//%%a.%%b/
  6.        ) else (
  7.          set str1=%%b
  8.          set str2=%%c
  9.          if "!str1:~2!"=="" if "!str2:~2!"=="" echo %%i//%%a.%%b.%%c/
  10.        )
  11.     )
  12.   )
  13. ))>b.txt
复制代码
试试看吧,不知道行不行
1

评分人数

TOP

返回列表