【问题标题】:How can I get devnagri substring from a string containing a range of characters in pythonpython - 如何从包含python中一系列字符的字符串中获取devnagri子字符串
【发布时间】:2020-08-14 12:40:04
【问题描述】:

这是我的示例字符串:

string = 'this is a string 3.158 बात करना है'

我想要一个将此字符串作为参数并返回的函数:
'बातकरनाहै'

【问题讨论】:

  • 您尝试了哪些方法和/或字符串函数?一般来说,如果你能证明你已经尝试过自己解决问题,这样的问题会更容易被接受。请查看网站的行为准则。 stackoverflow.com/conduct

标签: python-3.x unicode substring hindi


【解决方案1】:

devnagri 字母的 Windows XP 替代代码介于 2309 和 2416 之间。 所以你可以使用下面的代码:

s = 'this is a string 3.158 बात करना है'

for n,i in enumerate(s):
    if ( 2309 < ord(i) < 2416 ) or (i==' ') and ( 2309 < ord(s[n-1]) <2416 ):
        print(i,end='')

【讨论】:

    【解决方案2】:

    regex 模块让您可以访问正则表达式中的 unicode 属性。因此,您可以使用 \p{script=devnagri} 属性来匹配 devnagri 字符

    【讨论】:

      猜你喜欢
      • 2017-10-19
      • 2020-03-24
      • 2021-05-30
      • 2020-08-26
      • 1970-01-01
      • 1970-01-01
      • 2010-10-14
      • 1970-01-01
      相关资源
      最近更新 更多