从标记中获取一个子字符串,以及标记后的下200个字符

时间:2019-02-20 16:06:26

标签: python python-3.x string

我有一个长字符串,并且只有一个可以使用“ \ Guest”的标记,在找到“ \ Guest”之后,我希望接下来的200个字符。到目前为止,我尝试以不同的方式进行拼接,但是没有任何问题。.我的代码如下:

string_start = data.find(r"\Guest")
string_end = data.find(+200, string_start)
full_string = data[string_start:string_end]
print("string testing: ", full_string)

其中data是长输入字符串。有什么建议么?谢谢

2 个答案:

答案 0 :(得分:4)

改为使用此:

data[string_start+6:string_start+6+200]

其中'\Guest'字符串的长度为6。您可以轻松扩展它:

keyword = r'\Guest'
string_start = data.find(keyword) + len(keyword)
result = data[string_start: string_start + 200]

答案 1 :(得分:2)

基于@Idlehands的注释,您将在def hash2(a, b): # Reverse inputs before and after hashing # due to big-endian / little-endian nonsense a1 = binascii.unhexlify(a)[::-1] b1 = binascii.unhexlify(b)[::-1] h = hashlib.sha256(hashlib.sha256(a1+b1).digest()).digest() return binascii.hexlify(h[::-1]) # add .decode() here if you want str instead of bytes 中获得标记“ \ Guest”的开始位置,因此可以使用以下方式提取子字符串

string_start