gpt4 book ai didi

regex - 正则表达式 : searching an arbitrary file for MD5

转载 作者:行者123 更新时间:2023-12-04 06:05:21 26 4
gpt4 key购买 nike

请参阅以下 34 个字符的 ASCII 字符串。我试图在这个字符串上有 3 个 MD5 哈希匹配。

8AC905DD4AB2038E5F7EABEAE792AC41BC


[A-F0-9]{32}仅匹配前 32 个字符。

这是我拥有的二进制逆向工程项目的一部分。

如何从提到的字符串中获得 3 个不同的匹配项?任何想法表示赞赏。

干杯,

最佳答案

你没有说你使用什么语言,因此我提供了两个片段 - Python 和 PHP。但这里的线索是(?=([A-F0-9]{32}))模式(见下面的例子)。

解决方案(Python)

有一个解决方案,下面是用Python写的:

>>> import re 
>>> data = '8AC905DD4AB2038E5F7EABEAE792AC41BC'
>>> matches = re.finditer(r'(?=([A-F0-9]{32}))', data)
>>> results = [match.group(1) for match in matches]

测试

结果将是(如 this demo ):
>>> results
['8AC905DD4AB2038E5F7EABEAE792AC41', 'AC905DD4AB2038E5F7EABEAE792AC41B', 'C905DD4AB2038E5F7EABEAE792AC41BC']

这是你一直期待的。

解决方案 (PHP)

在 PHP 中,它可能如下所示:
<?php

$data = '8AC905DD4AB2038E5F7EABEAE792AC41BC';
$results = array();
preg_match_all('/(?=([A-F0-9]{32}))/', $data, $results);

$results将是以下数组:
Array
(
[0] => 8AC905DD4AB2038E5F7EABEAE792AC41
[1] => AC905DD4AB2038E5F7EABEAE792AC41B
[2] => C905DD4AB2038E5F7EABEAE792AC41BC
)

this demo为了证明。

关于regex - 正则表达式 : searching an arbitrary file for MD5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8424326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com