我有一个文本文件,其中包含有关录音的信息,包括曲目编号和名称,我想删除除曲目编号和曲目名称之外的所有其他文本.例如,文本文件如下所示:
text text text text
text text text text text text text text
text text text text text text text text text text text text
text text text text
text text text text text text text text
text text text text
text text text text text text text text text text text text text text text text
text text text text text text text text
text text text text
d1t01 - trackname
d1t02 - trackname
d1t03 - trackname
d1t04 - trackname
d1t05 - trackname
d1t06 - trackname
d1t07 - trackname
d1t08 - trackname
d1t09 - trackname
d1t10 - trackname
d1t11 - trackname
text text text text
text text text text text text text text
text text text text text text text text text text text text
text text text text
text text text text text text text text
text text text text
text text text text text text text text text text text text text text text text
text text text text text text text text
text text text text
Run Code Online (Sandbox Code Playgroud)
我想留下这个:
d1t01 - trackname
d1t02 - trackname
d1t03 - trackname
d1t04 - trackname
d1t05 - trackname
d1t06 - trackname
d1t07 - trackname
d1t08 - trackname
d1t09 - trackname
d1t10 - trackname
d1t11 - trackname
Run Code Online (Sandbox Code Playgroud)
我想出如何匹配行的开头与此正则表达式:
d[0-9]+t[0-9]+[0-9]+ -
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何删除"文本"的其余部分,只留下这些行.我还需要它来删除"返回",而不是在文本文件中留下任何空白行.
谢谢!
hwn*_*wnd 17
编辑:你应该能够在这里使用以下内容.
Find: ^(?!d\w+).*\r?\n?
Replace:
Run Code Online (Sandbox Code Playgroud)
正则表达式:
^ the beginning of the string
(?! look ahead to see if there is not:
d 'd'
\w+ word characters (a-z, A-Z, 0-9, _) (1 or more times)
) end of look-ahead
.* any character except \n (0 or more times)
\r? '\r' (carriage return) (optional)
\n? '\n' (newline) (optional)
Run Code Online (Sandbox Code Playgroud)
第 1 步 - 匹配行。查找对话框 > 标记选项卡,您可以为匹配的行添加书签。
第 2 步 - 删除已添加书签的行或删除未添加书签的行。搜索 > 书签 > 删除未标记的行或删除书签的行
归档时间: |
|
查看次数: |
21465 次 |
最近记录: |