Notepad ++,如何用正则expression式去除所有非ascii字符?
我search了很多,但没有写的地方如何从记事本+删除非ASCII字符?
我需要知道什么命令写在发现和replace(与图片将是伟大的)
-
如果我想做一个白名单和书签所有的ASCII字/行,所以非ASCII行将被标记
-
如果文件很大,不能select所有的ASCII行,只想select包含非ASCII字符的行。
这个expression式将search非ASCII值:
[^\x00-\x7F]+
勾选“search模式=正则expression式”,然后单击查找下一个。
来源:正则expression式任何ASCII字符
在Notepad ++中,如果你去:
search| 查找范围内的字符| 非ASCII字符(128-255)
然后你可以通过文件到每个非ASCII字符。
除了ProGM的回答之外,如果您看到NUL或ACK等字符框中的字符,并且希望摆脱它们,那么这些字符是ASCII控制字符(0到31),您可以使用以下expression式find它们并将其删除:
[\x00-\x1F]+
为了删除所有非ascii和ascii控制字符,你应该删除所有匹配这个正则expression式的字符:
[^\x1F-\x7F]+
要删除所有非ASCII字符,可以使用以下replace: [^\x00-\x7F]+
为了突出显示字符,我build议在search窗口中使用标记function:这将突出显示非ASCII字符,并在包含其中一行的行中放入书签
如果要突出显示并在ASCII字符上放置书签,则可以使用正则expression式[\x00-\x7F]
来执行此操作。
干杯
保持新的行:
- 首先为新行select一个字符…我用#。
- selectreplace选项,扩展。
- input\ n用#
- 点击全部replace
下一个:
- selectreplace选项正则expression式。
- input这个:[^ \ x20- \ x7E] +
- 保持replace为空
- 点击全部replace
现在,selectreplace选项扩展并用\ nreplace#
:)现在,你有一个干净的ASCII文件;)
另一个好的诀窍是在你的编辑器中进入UTF8模式,这样你就可以真正看到这些有趣的angular色,并自己删除它们。
其他方式…
- 如果您尚未安装Text FX插件,请安装它
- 转到TextFX菜单选项 – >将所有不可打印的字符打到#。 它将用3#符号replace所有无效的字符
- 转到查找/replace并查找###。 用空格replace它。
如果你不记得这个正则expression式,或者不在乎查看它,这是很好的。 但是其他人提到的正则expression式也是一个很好的解决scheme。