我在Notepad++中格式化一个csv文件,并插入CR和LF,这样每一行都是分开的,但是在这里显示的黑色符号框中有一个B:
在一些行中,我找不到任何关于它的信息,也找不到如何搜索它,所以我可以用替换函数删除它。
发布于 2019-09-13 01:28:10
默认情况下,Notepad++中黑匣子中的所有内容都是ASCII控制字符 --从Notepad++源代码(GitHub回购)来看,在Notepad++中使用了以下ASCII控制字符:
static const char *ControlCharacterString(unsigned char ch) noexcept {
const char * const reps[] = {
"NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL",
"BS", "HT", "LF", "VT", "FF", "CR", "SO", "SI",
"DLE", "DC1", "DC2", "DC3", "DC4", "NAK", "SYN", "ETB",
"CAN", "EM", "SUB", "ESC", "FS", "GS", "RS", "US"
};
...
}
如果您感兴趣,可以在控制字符Wiki文章中找到每个ASCII控制字符的含义。
如您所见,不存在B
控制字符。因此,这使我相信,您所拥有的是BS
,由于某种原因,S
被切断。
要从文本中删除BS
控制字符,需要用空字符串替换\x08
。
奖金:
为了进行复制,一些字符序列可以获得控制字符:
~ Shift + Esc = (ESC)
~ Ctrl + E = (ENQ)
~ Ctrl + R = (DC2)
~ Ctrl + Pause\Break = (ETX)
~ Ctrl + Shift + Y = (EM)
~ Ctrl + Shift + W = (ETB)
~ Ctrl + Shift + O = (SI)
~ Ctrl + Shift + A = (SOH)
~ Ctrl + Shift + D = (EOT)
~ Ctrl + Shift + G = (BEL)
~ Ctrl + Shift + H = (BS)
~ Ctrl + Shift + Z = (SUB)
~ Ctrl + Shift + X = (CAN)
~ Ctrl + Shift + C = (ETX)
~ Ctrl + Shift + v = (SYN)
~ Ctrl + Shift + B = (STX)
~ Ctrl + Shift + N = (SO)
~ Ctrl + Shift + 6 + (RS)
~ Ctrl + Shift + -(Dash) = (US)
https://stackoverflow.com/questions/57078751
复制相似问题