> I am determining a regular expression that can recognize the any of the > following strings: > > MAT file log\20101225 deleted > MAT file billing\20101225 deleted > MAT file util\20101225 deleted > MAT file carrier\20101225 deleted > > I begin by creating a regular expression object so that I can reuse it in > multiple operations: > > test = re.compile(‘MAT file > > for log, billing, util, and carrier I use an arbitrary match: > > (log|billing|util|carrier) > > for 20101225 I use decimal digit with repetition match: > > \d{8} > > and finish with: > > delete’) > > My question is how do I handle the backslash (NOTE: the match must only be a > backslash)?
Use a raw string (prepend 'r'): re.compile(r'MAT file (log|billing|util|carrier)\\\d{8} delete') You'll notice you need to escape the backslash first, and then use a raw string by prepending an 'r' in front of the string, so the backslash gets interpreted correctly (or rather, not interpreted) by the regular expression. Cheers, Evert _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor