中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助-从一txt文档中提取email地址
作者:
标题: 求助-从一txt文档中提取email地址 上一主题 | 下一主题
uime
初级用户





积分 70
发帖 27
注册 2006-9-19
来自 河南
状态 离线
『楼 主』:  求助-从一txt文档中提取email地址 使用 LLM 解释/回答一下

现有一txt文档,想提取其中的email地址
文件如下

Last edited by uime on 2006-9-26 at 05:27 ]


附件 1: email.txt (2006-9-25 19:00, 57.81 KiB, 下载附件所需积分 1 点 ,下载次数: 113)
2006-9-25 18:59
查看资料  访问主页  发短消息  网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下

  试试下面的代码:

@echo off
setlocal enabledelayedexpansion
for /f "tokens=2,3 delims==@ " %%i in ('findstr @ email.txt') do (
set var=%%i
set "var=!var:"=!"
echo !var!@%%j
)
pause


Last edited by namejm on 2006-9-25 at 19:56 ]




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-9-25 19:50
查看资料  发短消息  网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下


setlocal ENABLEDELAYEDEXPANSION
for /f "delims== tokens=2" %%i in ('find "@" email.txt') do (set emailtemp=%%i
echo !emailtemp:~0,-5!>>b.txt)


2006-9-25 20:03
查看资料  发短消息  网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 4 楼』:   使用 LLM 解释/回答一下

早啊,namejm ,发现你手比我快。 = =


2006-9-25 20:05
查看资料  发短消息  网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 5 楼』:   使用 LLM 解释/回答一下

不过,这句什么意思,我没看懂。

set "var=!var:"=!"

好像不写结果也一样。


2006-9-25 20:13
查看资料  发短消息  网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 6 楼』:   使用 LLM 解释/回答一下

Originally posted by NaturalJ0 at 2006-9-25 20:13:
set "var=!var:"=!"
好像不写结果也一样。

如果不写这一句,那么,xliu@cqnu.edu.cn 这条记录将会在最前面的 x 处带个前引号,我也是后来测试的时候才发现的。




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-9-25 20:37
查看资料  发短消息  网志   编辑帖子  回复  引用回复
9527
银牌会员

努力做坏人


积分 1185
发帖 438
注册 2006-8-28
来自 北京
状态 离线
『第 7 楼』:   使用 LLM 解释/回答一下

for /f "tokens=2 delims== " %x in ('findstr "@" email.txt') do echo %~x




我今后在论坛的目标就是做个超级坏人!!!
2006-9-25 21:30
查看资料  发短消息  网志  OICQ (329429)  编辑帖子  回复  引用回复
uime
初级用户





积分 70
发帖 27
注册 2006-9-19
来自 河南
状态 离线
『第 8 楼』:   使用 LLM 解释/回答一下

谢谢大家

我的问题和5楼的一样
引号好像也不配套啊

如果是同时提取用户名和email呢?
就像:
name email
的格式

Last edited by uime on 2006-9-25 at 22:01 ]


2006-9-25 21:56
查看资料  访问主页  发短消息  网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 9 楼』:   使用 LLM 解释/回答一下

Mail名与Mail地址分离:



@rem ==================== SearchMail.Bat ==================
@echo off

for /f "tokens=2 delims== " %%i in ('findstr @ email.txt') do (
for /f "tokens=1,2 delims=@" %%a in ("%%i") do echo %%a %%a@%%b >> Ok_Email.txt
)

Notepad.exe Ok_Email.txt




Last edited by redtek on 2006-9-26 at 00:46 ]


2006-9-26 00:31
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
pengfei
银牌会员




积分 1218
发帖 485
注册 2006-7-21
来自 湖南.娄底
状态 离线
『第 10 楼』:   使用 LLM 解释/回答一下

强! 顶一个先.


2006-9-26 02:32
查看资料  发送邮件  发短消息  网志  OICQ (573381312)  编辑帖子  回复  引用回复
pengfei
银牌会员




积分 1218
发帖 485
注册 2006-7-21
来自 湖南.娄底
状态 离线
『第 11 楼』:   使用 LLM 解释/回答一下

仔细看过之后, 才发现9楼朋友的代码提取的内容并不是楼主预期的.

在写代码的过程中发现楼主的网页内容存在错误, 如: 熊明勇、刘玺、dage三个名字后面跟的并不是有效的E-mail地址, 在取E-mail时需要多用一个判断. 整段代码的工作效率是比较低的。写完这段代码, 我神智已经不清醒了, 呵呵~ 也没有进行优化。请大家测试~~~

@echo off
setlocal enabledelayedexpansion
for /f "tokens=5 delims==" %%i in ('findstr /i /c:"WIDTH: 80px" email.txt') do (
set /a one=!one!+1
set num=1
set two=
for /f "tokens=2 delims== " %%a in ('findstr /i /c:"uemail" email.txt') do (
set /a two=!two!+1
if /i "!num!"=="1" (
if /i not "%%a"=="150><INPUT class" (
if /i not "%%i"=="uname></TD>" (
if /i "!one!"=="!two!" (
echo %%i %%~a>>name.txt
set num=
)
)
)
)
)
)
pause

Last edited by pengfei on 2006-9-26 at 09:01 ]


2006-9-26 03:30
查看资料  发送邮件  发短消息  网志  OICQ (573381312)  编辑帖子  回复  引用回复
zerostudy
中级用户





积分 266
发帖 98
注册 2006-4-21
状态 离线
『第 12 楼』:   使用 LLM 解释/回答一下

头晕~~


2006-9-26 04:16
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
uime
初级用户





积分 70
发帖 27
注册 2006-9-19
来自 河南
状态 离线
『第 13 楼』:   使用 LLM 解释/回答一下

真的不错,谢谢大家的热心,虽然执行了,但是对for语句还是有点模糊

Last edited by uime on 2006-9-26 at 05:14 ]


2006-9-26 04:50
查看资料  访问主页  发短消息  网志   编辑帖子  回复  引用回复
hushi8888
新手上路





积分 8
发帖 2
注册 2006-9-25
状态 离线
『第 14 楼』:   使用 LLM 解释/回答一下

可能EXCEL处理数量较少的这样的文件比较快!


2006-9-26 04:52
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 15 楼』:   使用 LLM 解释/回答一下

哇噻~~爽~!!!


2006-9-26 05:00
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: