What is regex for currency symbol?

前端 未结 2 1946
滥情空心
滥情空心 2020-12-30 20:58

In java I can use the regex : \\p{Sc} for detecting currency symbol in text. What is the equivalent in Python?

2条回答
  •  轮回少年
    2020-12-30 21:49

    You can use the unicode category if you use regex package:

    >>> import regex
    >>> regex.findall(r'\p{Sc}', '$99.99 / €77')  # Python 3.x
    ['$', '€']
    

    >>> regex.findall(ur'\p{Sc}', u'$99.99 / €77')  # Python 2.x (NoteL unicode literal)
    [u'$', u'\xa2']
    >>> print _[1]
    ¢
    

    UPDATE

    Alterantive way using unicodedata.category:

    >>> import unicodedata
    >>> [ch for ch in '$99.99 / €77' if unicodedata.category(ch) == 'Sc']
    ['$', '€']
    

提交回复
热议问题