![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 09:52 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 查找带有空格的字符串 |
| 可打印版本 2,132 / 27 |
| 第16楼 ka56 | 发表于 2008-10-04 18:31 |
| 中级用户 发帖 129 积分 234 | |
|
开头和结尾用一个空格是为了美观...
|
|
| 第17楼 ka56 | 发表于 2008-10-04 20:14 |
| 中级用户 发帖 129 积分 234 | |
|
for %%g in (" %ClipboardText%" "^%ClipboardText%") do findstr /r /c:%%g 用来查找的文档.txt>"查到的号.txt"
这句无效,不会改了 |
|
| 第18楼 ceii | 发表于 2008-10-04 21:00 |
| 初级用户 发帖 45 积分 115 | |
Originally posted by ka56 at 2008-10-4 06:27 PM: 这个也不行? |
|
| 第19楼 ka56 | 发表于 2008-10-04 21:11 |
| 中级用户 发帖 129 积分 234 | |
Originally posted by ceii at 2008-10-4 21:00: findstr /rc:"^ %ClipboardText%" 用来查找的号文档.txt>>查到的号.txt 我换成这样,不行,呵呵 |
|
| 第20楼 ceii | 发表于 2008-10-04 21:21 |
| 初级用户 发帖 45 积分 115 | |
|
我试了也可以啊! |
|
| 第21楼 ka56 | 发表于 2008-10-04 21:30 |
| 中级用户 发帖 129 积分 234 | |
Originally posted by ceii at 2008-10-4 21:21: 把代码合在一起试下,有劳了!! @echo off @echo WScript.StdOut.Write(new ActiveXObject('htmlfile').parentWindow.clipboardData.getData('text'))> tmp.js 2>nul @for /f "delims=" %%a in ('cscript //Nologo tmp.js') do @set ClipboardText=%%a >nul 2>nul @del tmp.js /f /q >nul 2>nul @echo %ClipboardText% findstr /rc:"^ %ClipboardText%" 用来查找的号文档.txt>查到的号.txt type 查到的号.txt| clip |
|
| 第22楼 ceii | 发表于 2008-10-04 22:01 |
| 初级用户 发帖 45 积分 115 | |
|
你的代码前面几行在我的机子运行不正常。
echo %ClipboardText% 不能得到 7777 。 看来问题不在于 findstr,而是前面赋值就已经不正常。 你能确定 echo %ClipboardText% 的输出是 7777 吗? |
|
| 第23楼 ka56 | 发表于 2008-10-04 22:10 |
| 中级用户 发帖 129 积分 234 | |
Originally posted by ceii at 2008-10-4 22:01: 先复制"7777",运行后%ClipboardText%的输出是"7777",前面的代码不会错的 |
|
| 第24楼 ceii | 发表于 2008-10-04 22:18 |
| 初级用户 发帖 45 积分 115 | |
|
找到原因了,%ClipboardText% 的值是 7777 加空格,
想办法去掉 7777 后面的空格就行了。 |
|
| 第25楼 ceii | 发表于 2008-10-04 22:20 |
| 初级用户 发帖 45 积分 115 | |
|
修改前面的代码,加上以下语句应该可以了吧。
set ClipboardText=%ClipboardText: =% |
|
| 第26楼 ceii | 发表于 2008-10-04 22:29 |
| 初级用户 发帖 45 积分 115 | |
|
再看了一下,简单地把以下语句
for /f "delims=" %%a in ('cscript //Nologo tmp.js') do @set ClipboardText=%%a >nul 2>nul 改成 for /f "delims=" %%a in ('cscript //Nologo tmp.js') do @set ClipboardText=%%a>nul 2>nul 就行了。 |
|
| 第27楼 ka56 | 发表于 2008-10-04 22:44 |
| 中级用户 发帖 129 积分 234 | |
|
非常感谢ceii兄!!已经搞定~~
可用的代码确定: @echo off @echo WScript.StdOut.Write(new ActiveXObject('htmlfile').parentWindow.clipboardData.getData('text'))> tmp.js 2>nul @for /f "delims=" %%a in ('cscript //Nologo tmp.js') do @set ClipboardText=%%a>nul 2>nul @del tmp.js /f /q >nul 2>nul @echo %ClipboardText% cd.>查到的号.txt findstr /rc:"^ %ClipboardText%" 用来查找的号文档.txt>>查到的号.txt for %%b in ("%ClipboardText% $") do findstr /r /c:%%b 用来查找的号文档.txt>>查到的号.txt type 查到的号.txt| clip pause |
|
| 第28楼 ness | 发表于 2008-10-04 22:54 |
| 新手上路 发帖 4 积分 8 | |
|
这样不行吗
|
|
| 上一页 1 2 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |