Re: Correct handling of case in unicode and regexps

Discussion in 'Python' started by Vlastimil Brom, Feb 23, 2013.

  1. 2013/2/23 Devin Jeanpierre <>:
    > Hi folks,
    >
    > I'm pretty unsure of myself when it comes to unicode. As I understand
    > it, you're generally supposed to compare things in a case insensitive
    > manner by case folding, right? So instead of a.lower() == b.lower()
    > (the ASCII way), you do a.casefold() == b.casefold()
    >
    > However, I'm struggling to figure out how regular expressions should
    > treat case. Python's re module doesn't "work properly" to my
    > understanding, because:
    >
    > >>> a = 'ss'
    > >>> b = 'ß'
    > >>> a.casefold() == b.casefold()

    > True
    > >>> re.match(re.escape(a), b, re.UNICODE | re.IGNORECASE)
    > >>> # oh dear!

    >
    > In addition, it seems improbable that this ever _could_ work. Because
    > if it did work like that, then what would the value be of
    > re.match('s', 'ß', re.UNICODE | re.IGNORECASE).end() ? 0.5?
    >
    > I'd really like to hear the thoughts of people more experienced with
    > unicode. What is the ideal correct behavior here? Or do I
    > misunderstand things?
    >
    > -- Devin
    > --
    > http://mail.python.org/mailman/listinfo/python-list


    Hi,
    you may check the new regex implementation
    https://pypi.python.org/pypi/regex
    which does support casefolding in case insensitive matches (beyond
    many other features and improvements comparing to re)

    hth,
    vbr
     
    Vlastimil Brom, Feb 23, 2013
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Devin Jeanpierre
    Replies:
    1
    Views:
    105
    jmfauth
    Feb 24, 2013
  2. Devin Jeanpierre
    Replies:
    0
    Views:
    87
    Devin Jeanpierre
    Feb 23, 2013
  3. Devin Jeanpierre
    Replies:
    0
    Views:
    78
    Devin Jeanpierre
    Feb 23, 2013
  4. MRAB
    Replies:
    0
    Views:
    71
  5. Devin Jeanpierre
    Replies:
    0
    Views:
    80
    Devin Jeanpierre
    Feb 23, 2013
Loading...

Share This Page