找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 57699|回复: 18

[问题求助] [已解决]文件不分行sed如何取出8-9位的数字字符串?

[复制链接]
发表于 2011-10-13 15:57:46 | 显示全部楼层 |阅读模式
本帖最后由 hansom 于 2011-10-18 13:56 编辑

57047&tpl=w&username=2940253&tpl=w&navftype
57047&tpl=w&username=27949941&tpl=w&navftype
57047&tpl=w&username=2340243&tpl=w&navftype
57047&tpl=w&username=27934233&tpl=w&navftype

上面是1.txt中的代码示例,为方便看我把代码分行了,实际中的是不分行的。
如何取出usermane=后面的8-9位数字?
这样行不?
sed -n /*username=\(.*\)&tpl*/\ 1.txt
好像测试通不过。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2011-10-13 16:51:36 | 显示全部楼层
用for的话,文件不分行好像也不好处理。
for /f "tokens=2 delims==" %%i in (1.txt) do (echo %%i >>temp1.txt)
发表于 2011-10-13 17:32:07 | 显示全部楼层
1.txt贴出来?
发表于 2011-10-13 19:07:19 | 显示全部楼层

  1. 分行:
  2. sed "s/.*username=\([0-9]\+\).*/\1/" 01.txt
  3. 分行或不分行:
  4. type 01.txt|sed "y/;&/\n\n/"|sed -n "/username=/ s/.*username=\([0-9]\+\).*/\1/p"
复制代码
发表于 2011-10-13 20:55:08 | 显示全部楼层
  1. gawk -F"[=&;]" "{for(i=1;i<=NF;i++)if($i=="username"){j=i+1;print $j}}" a.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2011-10-13 21:58:19 | 显示全部楼层
回复 5# awk
谢谢awk!,你的gawk把我要全部取出了
G:\vbs>gawk -F"[=&;]" "{for(i=1;i<=NF;i++)if($i==\"username\"){j=i+1;print $j}}"
temp.txt
1005203
2442689
2794991
2940253
4121341
15250977
16381849
18502445
23028594
23520785

G:\vbs>pause
请按任意键继续. . .
 楼主| 发表于 2011-10-13 22:01:53 | 显示全部楼层
回复 4# hfg1977


    多谢指点·
你的不分行的代码我运行后却只取出了一个我要的。

G:\vbs>type temp.txt  | sed "y/;&/\n\n/"  | sed -n "/username=/ s/.*username=\([
0-9]\+\).*/\1/p"
23520785

G:\vbs>pause
请按任意键继续. . .
发表于 2011-10-13 23:17:23 | 显示全部楼层
回复 4# hfg1977
  1. sed "y/;&/\n\n/" a.txt | sed -n "/username=/ s/username=//p"
复制代码
发表于 2011-10-13 23:17:56 | 显示全部楼层
回复 7# hansom


可能是你的sed版块问题,我这里测试一切正常。
 楼主| 发表于 2011-11-3 17:41:27 | 显示全部楼层
地址变动一下就出不出了:&amp;username=38784392">
 楼主| 发表于 2011-11-3 17:45:18 | 显示全部楼层
回复 9# awk


    我的sed 是4.0.7的
发表于 2011-11-3 21:43:58 | 显示全部楼层
回复 11# hansom


试试4.2.1
发表于 2011-11-3 21:50:40 | 显示全部楼层
回复 10# hansom


需求变了,代码当然要跟着变。
 楼主| 发表于 2011-11-3 23:12:48 | 显示全部楼层
呵呵,gawk -help,看得好累啊。。有点没辙了。。。
 楼主| 发表于 2011-11-3 23:20:26 | 显示全部楼层
回复 13# awk
请教前辈代码应如何改下?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 02:00 , Processed in 0.019248 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表