Correct syntax for pathological re.search()

Thomas Passin list1 at tompassin.net
Sat Oct 12 08:51:57 EDT 2024


On 10/12/2024 6:59 AM, Peter J. Holzer via Python-list wrote:
> On 2024-10-11 17:13:07 -0400, AVI GROSS via Python-list wrote:
>> Is there some utility function out there that can be called to show what the
>> regular expression you typed in will look like by the time it is ready to be
>> used?
> 
> I assume that by "ready to be used" you mean the compiled form?
> 
> No, there doesn't seem to be a way to dump that. You can
> 
>      p = re.compile("\\\\sout{")
>      print(p.pattern)
> 
> but that just prints the input string, which you could do without
> compiling it first.

It prints the escaped version, so you can see if you escaped the string 
as you intended. In this case, the print will display '\\sout{'.  That's 
worth something.

> 
> But - without having looked at the implementation - it's far from clear
> that the compiled form would be useful to the user. It's probably some
> kind of state machine, and a large table of state transitions isn't very
> readable.
> 
> There are a number of websites which visualize regular expressions.
> Those are probably better for debugging a regular expression than
> anything the re module could reasonably produce (although with the
> caveat that such a web site would use a different implementation and
> therefore might produce different results).
> 
>          hp
> 
> 



More information about the Python-list mailing list