我有一个日志文件,我需要删除每行的前 27 个字符。你应该有这样的一行:
2011-09-25 01:25:29 [INFO] <Exazoro> wazup
但它必须是这样的:
<Exazoro> wazup
答案1
使用正则表达式搜索,搜索^...........................
并替换为(空字符串)。
不幸的是,Notepad++ 不支持重复计数,^.{27}
比如SciTE 正则表达式文档此处也适用。
或者,使用矩形多行选择(Alt
选择时按下)来选择每一行的前 27 个字符,然后按Delete
或Backspace
。
使用 Unix 工具(例如 Cygwin、UnxUtils),您可以使用cut -c28-
或sed -E "s|^.{27}||"
代替。至少,这些是您将使用的 Linux 命令行调用...
答案2
自 Daniel Beck 的回答最初发布以来,Notepad++ 的更新现在支持以下正则表达式重复:^.{27}
但请注意,仅使用该表达式,Notepad++ 将重复从文档中删除所有字符,直到剩余字符不超过 27 个。为避免这种情况,您可以使用以下查找/替换:
- 找什么:
^.{27}(.*)$
- 用。。。来代替:
$1
答案3
下面是宏观的方式。这对于非技术人员来说更直观:
1)将光标置于第一行(任意光标位置)
2)单击:宏 -> 开始录制
3) 执行以下按键活动:
* Press the Home key
* Press Delete key 27 times (till you reach the intended character)
* Press down arrow button.
4)单击:宏 -> 停止录制
5)单击:多次运行宏->选择运行直到文件末尾->单击运行。
答案4
ALT + SHIFT + 鼠标选择(仅 ALT 不起作用)
指向文件的开头,转到结尾,按住 ALT+SHIFT 并指向您想要的位置...