- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 ms-dos 命令 findstr 查找字符串并将其从文件中删除。
目前我可以找到一个明确的字符串,但我真的很难使用正则表达式。该文件如下所示:
PLs - TULIP Report
Output_Format, PLS - TULIP REPORT
NUMLINES, 110907
VARIABLE_TYPES,T1,T8,I,T9,T2,N,N,N
[[data below]]
该文件是从某个系统导出的,令人讨厌的是其中包含该 header - 所以我想在使用 SQL Loader 将其导入 Oracle 数据库之前清理它。
不仅仅是一个文件,所有文件都具有相同类型的 header ,但每个文件都略有不同。虽然我很高兴首先使用硬编码值删除前两行,例如:
findstr /v "PLs - TULIP Report" "c:\myfiles\file1.PRO" > "c:\myfiles\file1.csv"</code><br>
findstr /v "Output_Format, PLS - TULIP REPORT" "c:\myfiles\file1.csv" > "c:\myfiles\file2.csv"
(请注意我是如何分两步完成的——如果有任何建议可以一步完成,我们将不胜感激)
第三行对我来说比较复杂,它总是采用那种格式:
NUMLINES, 110907
除了每个文件末尾的数字不同。那么如何使用正则表达式找到整行呢?我试过:
findstr /v /b /r "\D+ \s+ \d+"
但没有任何运气。
仅供引用,[[data below]]
中的数据看起来像
*,"00000161",456823,"017896532","FU",23.95,3.34,20.61
等..显然,我不想修改数据区。
我希望以上是有道理的,
谢谢
最佳答案
必须排除单行,findstr
不能匹配多行。只需用空格分隔不同的正则表达式
findstr /r /b /v "NUMLINES PLs Output_Format" *.txt
^regex1 ^2 ^3
指定 /b
允许您仅在行的开头查找匹配项,而 /v
则排除这些行。
编辑:
当然是用法了
findstr /r /b /v "NUMLINES PLs Output_Format" yourfile > yourtarget
并且在 yourtarget
中,您将找到 yourfile
的数据,除了被正则表达式排除的行。
编辑 2:
根据您的评论,您只需将 VARIABLE_TYPES
添加到您的正则表达式即可
findstr /r /b /v "NUMLINES PLs Output_Format VARIABLE_TYPES" yourfile > yourtarget
这是在一条指令中完成整个操作的方法。
关于regex - 使用 findstr 的正则表达式 (ms-dos),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13028228/
我的批处理程序 FINDSTR /C:"Result Comparison failure" %tmp_result_file% 我想做以下操作,将上述命令的结果设置为变量。 如果找到,将第一行设
我在文本文件(test.txt)中有以下字符串: BLA BLA BLA BLA BLA Found 11 errors and 7 warnings 我执行以下命令: findstr /r "[0-
今天从命令行提示符启动 JBoss 时出现以下错误: 'findstr' is not recognized as an internal or external command 最佳答案 请谷歌一下
我不明白; 搜索 用法很清楚,但我无法让它工作。我要搜索 在文本文件上,使用 ^和 $特点。这边走: findstr /C:"^test$" test.txt 我以多种方式制作了文件 (test.tx
我正在尝试编写一个 findstr 正则表达式,它将使用 subversion 查找本地和远程修改的文件。鉴于下面的示例输出,我想匹配那些以“M”作为第一个或第二个字符的行。还会有其他人,但这是我的起
我做了一段批处理代码,我认为这会奏效。我在想这段代码在做什么?我有一些插件,我想测试部署是否正确。所以我从plugins.txt 中得到了pluginlink。然后我用java语句从SVN获取插件。我
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我是 Windows 批处理编程和 Stack Overflow 的新手,所以如果我问任何对你们经验丰富、才华横溢的人来说显而易见的问题,请原谅我。我正在使用 Windows 批处理 (.bat) 使
我正在使用 findstr 及其 /r 标志进行一些字符串验证,以允许使用正则表达式。特别是我想验证整数。 正则表达式 ^[0-9][0-9]*$ 对于非负数效果很好,但由于我现在也支持负数,所以我尝
我有两个文件: 1.txt: abc def 2.txt: abc 请注意,2.txt 仅包含 3 个字符,没有空行。现在,如果我这样做: findstr /S /I /L /A:02 "abc" *
我只想在他的文本文件中找到特定的行,所以我认为使用范围是个好主意。但我似乎可以在网上找到任何教程。请帮助.. 文本文件的例子 XXX scan report for 192.0.0.0 example
Windows 中的批处理文件有时会让人感到困惑。怎么办 findstr "^" 相当于找一个空文件夹,当^表示行首? for /d /r %1 %%A in (.) do ( dir /ad
我正在尝试使用 findstr 代替 grep 在准系统的 vanilla windows 框上(遗憾的是这是一个要求)。我有一些相对较大的文件 (1Gb+),我想提取那些不包括 MX、MXnn、BR
我需要使用 DOS 命令 FINDSTR 来搜索我们所有与其他类型文件(如 PDF、exe、dll 等)混合的源代码文件。 我不需要搜索那些二进制文件。有没有办法排除二进制文件? 我的命令看起来像 f
我有一个程序正在使用 findstr ,当找到字符串时 errorlevel返回 0当找不到字符串时 errorlevel返回 1 .好吧,没关系,我可以处理。 问题出在哪里,我找不到任何关于每个 e
这很简单……为什么第一个命令有效而第二个命令无效? Findstr 在我看来最适合在“dos”之类的命令中使用,而不是在 powershell 中使用。 Get-AppXProvisionedPack
PowerShell 的 DOS FINDSTR 等价物是什么? ?我需要在一堆日志文件中搜索“错误”。 最佳答案 这是快速答案 Get-ChildItem -Recurse -Include *.l
我正在尝试使用netstat -abn或Select-String来获取findstr命令的完整输出,但是由于仅列出了搜索字符串,因此无法正常工作。我正在寻找与grep在Linux上相同的行为,如果您
我正在尝试执行命令 findstr /RC:"h25v06.*hdf\"" "index.html" >temp.txt 得到跟随输出 index.html: FINDSTR: Cannot ope
我是一名优秀的程序员,十分优秀!