标题: [文本处理] bat脚本文本提取把二级域名的都删掉? [打印本页]
作者: idc878787 时间: 2022-3-26 20:03 标题: bat脚本文本提取把二级域名的都删掉?
bat 文本提取??
把二级域名的都删掉??
文本a.txt
1----2----3----aodajia.com/
1----2----3----aigu-mac.com/
1----2----3----aililai888.com.cn/
1----2----3----aoding120.cn/
1----2----3----www.aodng120.net/
1----2----3----www.aililai88.com.cn/
1----2----3----ss.ysgqw.cn/
1----2----3----sn6pn2.top.cutetat.com/
1----2----3----app.25731.net/
生成新文本b.txt
1----2----3----aodajia.com/
1----2----3----aigu-mac.com/
1----2----3----aililai888.com.cn/
1----2----3----aoding120.cn/
1----2----3----www.aodng120.net/
1----2----3----www.aililai88.com.cn/
作者: went 时间: 2022-3-26 21:08
本帖最后由 went 于 2022-3-26 23:03 编辑
test.bat- @echo off & cd /d "%~dp0"
- setlocal enabledelayedexpansion
- (
- for /f "usebackq delims=" %%i in ("a.txt") do (
- for /f "tokens=3* delims=-" %%a in ("%%i") do (
- set /a "a=0,b=0,c=0" & set "line=%%b"
- if "!line:~-1!"=="/" set "line=!line:~0,-1!"
- for %%b in ("!line:.=" "!") do (
- set "d=0"
- for %%c in (www com cn net) do if "%%~b"=="%%c" set "d=1"
- if "!d!"=="0" ( set /a "a+=1" & set "b=1" ) else ( set "c=1" )
- )
- )
- if "!a!!b!!c!" equ "111" echo %%i
- )
- ) >"b.txt"
- pause&exit
复制代码
作者: wujunkai 时间: 2022-3-26 21:10
- for /F "tokens=1,2,3* delims=." %i in (test.txt) do (
- set "line=%j"
- if not "!line:~-1,1!"=="/" echo !line!
- )>new.txt
复制代码
大概思路就是这样,细节需要测试,因为没有测试过。
分割后判断第二个结尾有无’/’符,有的话是二级域名
作者: Batcher 时间: 2022-3-26 21:14
回复 3# wujunkai
建议还是测试一下吧,否则错误太多了。
作者: idc878787 时间: 2022-3-26 21:48
回复 2# went
谢谢
作者: idc878787 时间: 2022-3-26 22:22
回复 2# went
1----2----3----ysgqw
1----2----3----ysgqwee
这种不含 小数点 不是域名的 要去掉 怎么修改?
作者: went 时间: 2022-3-26 23:03
回复 6# idc878787
2楼更新了
作者: idc878787 时间: 2022-3-26 23:13
回复 2# went
多谢
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |