标题: [文本处理] [已解决]批处理怎样提取a.txt中的网址? [打印本页]
作者: daohe 时间: 2010-5-31 14:03 标题: [已解决]批处理怎样提取a.txt中的网址?
如题,提取a.txt中href=“到”之间的部分,并且每一条作为一行,处理完后每行前面加上http://www.wholesale-watches.org/补全地址,处理后结果b.txt
http://www.wholesale-watches.org/luxury-watches.html
http://www.wholesale-watches.org/fashion-watches.html
http://www.wholesale-watches.org/sport-watches.html
……
太多了就不一一写了
[attach]2587[/attach]
[ 本帖最后由 daohe 于 2010-5-31 23:25 编辑 ]
作者: zmh886 时间: 2010-5-31 14:46
居然不支持上传 rar 和htm格式 只好改成txt上传了
修改为htm格式 打开后 点保存按钮保存到b.txt
[local]1[/local]
作者: zmh886 时间: 2010-5-31 14:49
出现黄色条提示时 点它 弹出菜单后点“允许阻止的内容” 接着选“是” 点保存后也选 “是”
作者: hanyeguxing 时间: 2010-5-31 15:26
以第三方命令fr或sed等完成操作:
fr下载地址:http://ishare.iask.sina.com.cn/f/7088512.html- copy a.txt $temp$>nul
- fr $temp$ -ric:"<a href=\"" -t:"\r\nhttp://www.wholesale-watches.org/"
- fr $temp$ -ric:"\"" -t:"\r\n"
- findstr /b /l /c:"http://www.wholesale-watches.org/" $temp$>b.txt
- del $temp$
复制代码
作者: youxi01 时间: 2010-5-31 15:45
试试把下列内容保存为test.vbs,同时把你的a.txt与test.vbs放在相同的目录下,直接运行test.vbs即可。- Dim FSO, objFile, FileName, FileContent
-
- FileName = "F:\a.txt"
-
- Set FSO = CreateObject("Scripting.FileSystemObject")
- Set objFile = FSO.OpenTextFile(FileName, 1, False)
- FileContent = objFile.ReadAll
-
- RetStr=MyRegExp("<a(.+?)href=""*([^\s]+)""([^>]+|>)",FileContent)
-
- FSO.CreateTextFile("Res.txt",True).Write RetStr
-
- Set objFile=Nothing
- Set FSO = Nothing
-
- '/*/////////////////////////////////////////////////////////
- '*MadeTime: 2010-5-31
- '*LastModify: 2010-5-31
- '*功能: 正则提取内容
- '*参数: 正则表达式,处理字符串
- '**********************************************************
- Function MyRegExp(Patrn,strng)
- Dim InsertURL
- InsertURL="http://www.wholesale-watches.org/"
- Set RegEx1=New RegExp
-
- RegEx1.Pattern = Patrn
- RegEx1.IgnoreCase=True
- RegEx1.Global=True
-
- Set Matches =RegEx1.Execute(strng)
- For Each Match In Matches
- RetStr=RetStr & InsertURL & Match.submatches(1) & vbcrlf
- Next
- MyRegExp=RetStr
-
- Set RegEx1=Nothing
- End Function
复制代码
作者: daohe 时间: 2010-5-31 23:37
测试结果:
1楼 3楼正确,2楼运行结果为空了
作者: hanyeguxing 时间: 2010-6-1 16:25 标题: 回复 6楼 的帖子
如果fr命令已下载,那么检查a.txt文本是否是ansi编码!
作者: lvsehuaxue 时间: 2011-5-22 11:40
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in (a.txt) do (
- set "v=%%i"
- set "v=!v:"= !"
- for %%a in (!v!) do (
- echo "%%a" |findstr "html">nul && echo http://www.wholesale-watches.org/%%~a
- )
- )
-
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |