[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何查找出文本中含有指定字符串的行和该行行号

本帖最后由 pcl_test 于 2016-9-13 17:06 编辑

找到文本中的指定文字,并记录下行号
各位高手,本人想在文本中找到指定的文字,并记录下所在的行,并记到一个变量中.谢谢
1

评分人数

应该给出一个典型的文本,把要提取的内容高亮显示,否则别人给出的代码都是摸索着写,极不通用的。你没有考虑过多的情况,比如要查找的内容在很多行中都有时,你要哪一行的行号赋予变量?还是都赋予?
心绪平和,眼藏静谧。

TOP

呵呵,新手,不懂规矩

如:tq.txt
<tr bgcolor=#E4F0F8 align=center>
<td  height=25><a href=http://php.weather.sina.com.cn/search.php?city=青岛 style='color:#000' target=_blank>青岛</a></td>
<td>多云</td>
<td> 3-4</td>
<td>23 ℃</td>
<td>小雨</td>
<td>南 3-4</td>
<td>16 ℃</td>
</tr>

我要找到第2个青岛所在的行,并记录下行号

顺便问下,怎么高亮显示?

TOP

  1. @echo off
  2. for /f "delims=:" %%a in ('findstr /n "青岛" tq.txt') do set "line=%%a"
  3. echo “青岛”所在的行是第%line%行。
  4. pause>nul
复制代码
心绪平和,眼藏静谧。

TOP

  1. @echo off
  2. for /f "delims=:" %%i in ('findstr /n "青岛" a.txt') do echo 所在行为第%%i行
  3. pause>nul
复制代码

晕,发了才看见已有标准答案。。。
***共同提高***

TOP

哈哈,太好了,这里真是个好地方,谢谢两位了.

TOP

原帖由 newdosuser 于 2008-10-24 22:52 发表
哈哈,太好了,这里真是个好地方,谢谢两位了.

既是好地方,就该多来看看。。。
***共同提高***

TOP

返回列表