如何从包含 python 中的一系列字符的字符串中获取 devnagri 子字符串

How can I get devnagri substring from a string containing a range of characters in python

这是我的示例字符串:

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

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

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

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='')