【问题标题】:remove hex value from string [closed]从字符串中删除十六进制值[关闭]
【发布时间】:2014-12-15 17:59:49
【问题描述】:

如何在 Python 2.7 中从字符串中删除十六进制值?这是字符串,

\xffDSI\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x01\x00\x08\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00@\x00\x00\x00\x01\x04\xb3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x00\x04\x00\x02\x00\x01\x00\x01\x00\x02\x00\x06\x00\x06"\x00\x00\x00\x00c\x01,\x00\x00\x06&\x00\x00\x00\x01\x01,\x00\x00\x06\'\x00\x00\x11\x98\x00\x19\x00\x00\x00(\x00\x00\x00\x00\x00\x0011_w\x00\x00\x00\x00\x00\x006\x00A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01,\x00\x00\x17\xbf\x00\x00\x11\x98\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00

#b4
,sudd5ly1
!
toddl]
0
able
to
use
a
comput]
to
play
games4
\x00$\x00\x00\x018\x00\x00\x00\x00\x00\x01\x00\x19\x00\x02\x00\x03\x00\x04\x00\x05\x00\x1d\x00\x1f\x00\x06\x00\x07\x00\x08\x00\t\x00'],
['\x00\x0b\x00\x0c\x00\r\x00\x1b\x00\x0e\x00\x0f\x00\x10\x00\x13\x00\x11\x00\x14\x00\x1c\x00\x18\x00

我只想将#b4 显示到games4。应删除所有十六进制值。谢谢。

我要做的是读取文件类型 *.dxb,它显示盲文字体。我能够读取文件,但输出显示了所有那些 \xffDSI\x00... 然后 #b4 ,sudd5ly1

#b4 ,sudd5ly1 只是我希望输出显示的部分,以便我可以与其他文件进行比较。

再次感谢您。

【问题讨论】:

  • 这些不仅仅是十六进制值。例如,第一行包含非十六进制字符DSI
  • 只需编辑我的问题。

标签: python python-2.7 hex


【解决方案1】:

你可以这样使用:

import string
s = '\xffDSI....'
cleaned = ''.join(c for c in s if c in string.printable)

这使用printable 作为“不是十六进制值”的定义,尽管它确实包括\x0b\x0c(都是可打印的空白字符)。

【讨论】:

  • 它不适用于字符串'test \x0b'
猜你喜欢
  • 1970-01-01
  • 2011-05-26
  • 1970-01-01
  • 2018-01-02
  • 2015-10-09
  • 2012-09-12
  • 1970-01-01
  • 2012-10-24
  • 2016-08-04
相关资源
最近更新 更多