我一遍又一遍地尝试用一堆奇怪的东西替换一个文件,只找到可读的字符..
这是文件的一个例子
+«›é¦$6ðbç›4;r6O–0µ<hiñÅÙuµN%\$Õnever in a million yearsþÈWèÁƧÀ[‰võ³°œ»ê"V5n¤ÉÂT‡«
看到“hi”这个词?它周围没有“空间”,因此如果可能,它应该被删除,如果不是它的确定!
但是看到“永远不会一百万”这个词 - 那应该就在那里......其他一切都应该被删除。
如何?
答案 0 :(得分:0)
使用正则表达式模式,找到:
[^a-zA-Z0-9 ]|((?<![a-zA-Z0-9 ])[a-zA-Z0-9 ]{1,3}(?![a-zA-Z0-9 ]))
替换为零。
根据您的样本,生成的文本将是:never in a million years
现在注意到这不是那么简单,你必须设置一个阈值,你将“视为一个单词”。
例如,在上面的正则表达式中,将删除长度低于4个字符的所有序列。 (这就是删除r6O
的原因。)因此,您可以通过更改{1,3}
部分中的第二个数字来调整正则表达式以满足您的需求。例如{1,4}
将删除每个包含4个或更少字符的序列,{1, 5}
将删除具有5个或更少字符的序列,依此类推。
试试that regex in an online tool,您可以更轻松地对其进行微调。