我可以在difflib中使用正则表达式吗?
具体来说,我想要做的是:
difflib.context_diff(actual, gold)
实际情况是:
[master 92a406f] file modified
黄金的含义是:
\[master \w{7}\] file modified
看起来你想忽略实际文件中的92a406f
部分。你应该编写一个使用正则表达式清除你想忽略的部分的清洁工:
actual = re.sub(r"\[master \w{7}\]", "[master *******]", actual)
然后存储清洗过的金文件。接下来,您可以使用标准的difflib将清洗后的实际文件与清洗后的金文件进行比较。
__eq__
方法,并在这些对象的序列上使用difflib。不过我不建议这样做。a[besti-1] == b[bestj-1]
和 a[besti+bestsize] == b[bestj+bestsize]
。 - Julioa[besti-1] == b[bestj-1]
和a[besti+bestsize] == b[bestj+bestsize]
,但是self.b2j
呢? - Julio==
替换,我不记得有任何关于b2j的操作(这可能意味着我的代码存在漏洞,但是在那些日子里它能够满足我的需求)。 - PlasmaHH