行过滤器(保留或删除含有某内容的行)
保留或删除包含、以某内容开头或结尾、完全等于某值或匹配正则的行,也可保留前 N 行、后 N 行或每隔 N 行;支持按行或按段落处理。
这是浏览器版的 grep、head 和 tail,适用于手上有日志文件、清单或 CSV 导出而只需要其中几行的时候。可以同时指定多个条件,保留或删除包含某个词、以某内容开头或结尾、恰好等于某个值或匹配正则表达式的每一行;也可以按位置截取:前 N 行或后 N 行、某个行号范围,或每隔 N 行取一行。段落模式则对以空行分隔的文本块做同样的处理。
使用方法
- 粘贴文本。
- 选择匹配的行是保留还是删除。
- 选择匹配条件并输入词语或模式(每行一个);若按位置过滤,则设置 N 和行号。
- 复制过滤后的文本;备注会显示保留和删除了多少行。
计算公式
保留的行 = (行匹配) XOR (操作为“删除”) · 从第 S 行起每隔 N 行,保留第 S、S + N、S + 2N … 行
有多个词条时,“其中任意一个”保留至少匹配一个词条的行,“全部”则只保留匹配所有词条的行。除非勾选“区分大小写”,否则匹配会忽略大小写;整词匹配在任何文字体系中都把字母、数字和下划线视为单词字符。正则表达式使用 JavaScript 语法,每次对一行进行匹配。像 (a+)+ 这样重复里套重复,或像 (a|aa)+ 这样选项可能匹配相同文本的重复,可能耗时呈指数增长,除非允许,否则会被拒绝。
示例
对示例日志,保留包含 ERROR 或 WARN 的行,会在 6 行中保留 3 行:两条支付超时和一条磁盘警告。把操作改成“删除”则保留另外三行;选择“属于前 N 行”并设 N = 2,则只保留前两条日志。
常见问题
怎样删除所有包含某个词的行?
选择“删除”和“包含”,再输入该词。在不同的行里再写几个词,就能删除包含其中任意一个词的行。
可以像 grep -v 或 grep -E 那样使用吗?
可以。带模式的“删除”相当于 grep -v,“匹配正则表达式”类似 grep -E,不勾选“区分大小写”相当于 grep -i。“属于前 N 行”和“属于后 N 行”的作用就是 head 和 tail。
为什么我的正则表达式匹配得太多?
每个模式会在行内任意位置搜索。请用 ^ 和 $ 把它固定在开头和结尾,比如用 ^\d+$ 查找只含数字的行。
最后更新:
包含这些输入的页面地址: https://kakao.mobile/zh/tools/remove-lines-containing-tool/
引用此工具
kakaoCalc. (2026, November 8). 行过滤器(保留或删除含有某内容的行). https://kakao.mobile/zh/tools/remove-lines-containing-tool/
“行过滤器(保留或删除含有某内容的行).” kakaoCalc, 8 Nov. 2026, kakao.mobile/zh/tools/remove-lines-containing-tool/.