String comparison question

Michael Spencer mahs at telcopartners.com
Sun Mar 19 20:38:27 EST 2006


Olivier Langlois wrote:

> I would like to make a string comparison that would return true without
> regards of the number of spaces and new lines chars between the words

> 
> like 'A   B\nC' = 'A\nB    C'
> 

import string
NULL = string.maketrans("","")
WHITE = string.whitespace

def compare(a,b):
     """Compare two strings, disregarding whitespace -> bool"""
     return a.translate(NULL, WHITE) == b.translate(NULL, WHITE)

Here, str.translate deletes the characters in its optional second argument. 
Note that this does not work with unicode strings.

Michael




More information about the Python-list mailing list