【问题标题】:How can I remove foreign word from Bengali text in python如何从python中的孟加拉语文本中删除外来词
【发布时间】:2020-10-19 18:37:02
【问题描述】:

我有一个文本数据文件,其中包含原始孟加拉语文本数据和很多外来词 我想从孟加拉语原始文本中删除所有外来词。

输入:

দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। पैरेनकाइमा कोशिकाएं . what a shame. সুস্থ থাকা দায়।

输出:

দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। সুস্থ থাকা দায়।

任何建议或想法都会对我有很大帮助。

提前致谢。

问候

【问题讨论】:

    标签: python text nlp text-processing


    【解决方案1】:

    使用resplit() 函数来删除多个whilespaces。

    import re
    
    a = "দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। पैरेनकाइमा कोशिकाएं . what a shame. সুস্থ থাকা দায়।"
    
    a = "".join(i for i in a if i in ["।"] or 2432 <= ord(i) <= 2559 or ord(i)== 32)
    a=" ".join(a.split())
    print(a)
    

    输出:

    দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। সুস্থ থাকা দায়।
    

    【讨论】:

      【解决方案2】:

      这是 Christian Sloper 在 cmets 中提到的。显然正确的排序范围是 2432 到 2559,所以这样的事情似乎有效:

      import re
      
      a = "দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। पैरेनकाइमा कोशिकाएं . what a shame. সুস্থ থাকা দায়।"
      
      a = "".join(i for i in a if i in [".","।"] or 2432 <= ord(i) <= 2559 or ord(i)== 32)
      re.sub(' +', ' ', a)
      

      【讨论】:

      • 嗨,非常感谢。它正在工作,但它也删除了标点符号 (।) 。有没有办法跳过标点符号?
      • @SagorSarker 标点符号到底是什么意思?只有一个字符(।)?如果是这样,那么它就完成了。
      • 嗨,在输出中它删除了 (.) 和 (।) 。但我在这里得到了这个想法。谢谢和问候
      【解决方案3】:

      使用ord 过滤掉“西方字符和标点符号”(抱歉没有更好的词),使用re 删除多个空格。

      import re
      
      a = "দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। पैरेनकाइमा कोशिकाएं . what a shame. সুস্থ থাকা দায়।"
      
      a = "".join(i for i in a if ord(i) > ord('z') or ord(i)== 32)
      re.sub(' +', ' ', a)
      

      返回:

      'দেশের রাজনীতি দিনকে দিন পচে যাচ্ছে। पैरेनकाइमा कोशिकाएं সুস্থ থাকা দায়।'
      

      【讨论】:

      • 嗨@ChristianSloper 非常感谢您的快速回复。但它仍然包含孟加拉语中的印地语文本。 पैरेनकाइमा कोशिकाएं。我正在寻找一种可以从孟加拉语文本中删除任何外来词的解决方案。谢谢和问候
      • 对不起。我不知道是什么,但我假设它们有单独的排序范围,因此您可以使用基于此的类似过滤器。尝试找出第一个和最后一个bangla ord-value 并对其进行过滤。
      • 非常感谢。我会听从你的建议。问候
      猜你喜欢
      • 2021-11-15
      • 2021-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多