Python 2.4中assertRegexMatches的等价物
假设我有一个正则表达式
REGEX = re.compile('.*foo{')
那么我该如何在Python 2.4中写一个单元测试来匹配一组字符串呢?
我知道在Python 2.7中可以使用assertRegexMatches,但可惜在2.4中这个方法不适用 :/
我在其他测试中使用self.assertEqual。
谢谢,
M
4 个回答
2
如果你想要完全匹配,可以这样做:
assertTrue(REGEX.match(data))
如果你不在乎匹配的位置,那么可以这样:
assertTrue(REGEX.search(data))
记住匹配和搜索之间的区别。另外,如果你有兴趣的话,可以创建一个自己的类,继承TestCase
,然后添加你自己的断言来实现上面的功能。
6
在编程中,有时候我们会遇到一些问题,可能是因为代码写得不够好,或者是我们对某些概念理解得不够透彻。比如,有人可能会在使用某个功能时,发现它并没有按预期工作。这时候,我们就需要去查找原因,看看是不是哪里出了问题。
通常,解决问题的第一步是仔细阅读错误信息。错误信息就像是程序在告诉我们:“嘿,我遇到麻烦了!”它们会给我们一些线索,帮助我们找到问题所在。
另外,查看相关的文档和资料也很重要。很多时候,官方文档会详细解释某个功能的用法,帮助我们更好地理解如何使用它。
如果自己解决不了,还可以去一些技术社区,比如StackOverflow,向其他程序员求助。在那里,大家会分享自己的经验和解决方案,可能会给我们带来新的思路。
总之,编程过程中遇到问题是很正常的,关键是要保持耐心,逐步分析和解决。这样,我们才能不断进步,写出更好的代码。
self.assertTrue(REGEX.match(text))
3
因为你问的是一组字符串,而不是单个字符串
def createMatcher( self, regex ):
def matchCheck( argument ):
self.assertTrue( regex.match( argument ) )
return matchCheck
那么在你的函数里:
map( self.createMatcher( REGEX ), mySetOfStrings )