2013-11-04 155 views
0

什么是最好的方式来做到这一点(我在Ruby中)在Python中。剥离页眉和页脚

private_key = base64data.to_s.sub('-----BEGIN RSA PRIVATE KEY-----', '') 
private_key = private_key.sub('-----END RSA PRIVATE KEY-----', '') 

基本上我需要去掉私钥字符串的页眉和页脚。

问候。

+0

base64data.to_s.delete(' - ---- BEGIN RSA PRIVATE KEY -----')可能是Ruby中的正确方法。 – hirolau

回答

1

直截了当:

private_key = private_key.replace('-----BEGIN RSA PRIVATE KEY-----', '') 
private_key = private_key.replace('-----END RSA PRIVATE KEY-----', '') 
+0

不错 - 比Ruby更优雅。开始爱Python!谢谢 – user1513388

1

在Python str.replace()相当于红宝石sub

private_key = base64data.replace('-----BEGIN RSA PRIVATE KEY-----', '') 
private_key = private_key.replace('-----END RSA PRIVATE KEY-----', '') 

或者使用正则表达式:

import re 
private_key = re.sub(r'-----(BEGIN|END) RSA PRIVATE KEY-----', '', base64data) 
+0

或者 - 可以从相反的方式想到它,并获得......'re.search('BEGIN(。*?)END',base64data).group(1)'之间的文本,但是使用外部位充分说明;) –