在unix中查找^ @字符?

时间:2015-04-25 20:32:05

标签: c++ regex unix hex character

我正在编写一个C ++程序,我正在读取很多单词之间包含^ @的文件信息。这个角色是什么?我猜它是一个十六进制值的表达但是哪一个?什么是匹配它的正则表达式?很抱歉,如果这是重复的,我尝试搜索此内容,但没有搜索引擎接受这些字符。

我是正则表达式的新手,所以我不知道我在做什么。它会是这样的吗?

^.*\^@*.*$

1 个答案:

答案 0 :(得分:6)

^@表示空字节(字符代码00)。在正则表达式中,它通常表示为\0\x00

背景详情:

^@是您在键入 @ 时按住 Control 获得的字符。传统上,按住Control会通过清除高三位(将字符放入0x00-0x1F范围)来修改字符代码;因此, G (0x47)变为字符BEL(0x07),@(0x40)变为NUL(0x00)。