【问题标题】:Removing non-alphanumeric unicode characters from a string in Python从 Python 中的字符串中删除非字母数字 unicode 字符
【发布时间】:2019-11-26 21:55:23
【问题描述】:

如何转换这个字符串:

"\xa0かかわらず"

到这个字符串?:

"かかわらず"

即如何删除非字母数字 unicode 字符?我已经尝试过将字符串编码为 ascii 的解决方案,但它不适用于日文符号。

【问题讨论】:

  • 您对非字母数字的定义是什么?通常“かかわらず”也被视为非字母数字。
  • 我的直觉是字母数字是给定语言字母表中的任何字符,所以就我而言,字母数字字符是数字或日文字母表中的任何字符。
  • fileformat.info/info/unicode/char/00a0/index.htm 是一个空格字符,也许您实际上只是想将任何空格字符标准化为常规空格?
  • 也许您正在寻找类似stackoverflow.com/a/38617492/874188
  • 使用re.sub\W(非单词)模式替换为空字符串应该可以,例如re.sub(r'\W', '', "\x0aかか\x0aわらず").

标签: python utf-8 ascii


【解决方案1】:

使用 re.sub 将 \W (非单词)模式替换为空字符串应该可以,例如

re.sub(r'\W', '', "\x0aかか\x0aわらず")

– metatoaster 2019 年 7 月 18 日 2:59

这行得通。由于 metatoaster 仅将其写为评论而不是每个人都阅读它们,因此我可以随意将其写为实际答案...

【讨论】:

    猜你喜欢
    • 2014-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-30
    • 1970-01-01
    • 2022-09-23
    • 2018-02-24
    • 2015-02-26
    相关资源
    最近更新 更多