删除文本中除印地语和英语字母、数字和标点符号之外的所有内容

问题描述 投票:0回答:1

我有一个混合有英语和印地语的文本,我想删除除印地语和英语字符以及数字和标点符号之外的所有字符。这样,我就可以去掉“(”、“)”、“@”等。请考虑下面的文字。

text = नई दिल्ली। Navjot Singh Sidhu Resigns. पंजाब विधानसभा चुनाव से पहले पंजाब कांग्रेस में कई बड़े बदलाव देखने को मिल रहे हैं। पहले कैप्टन अमरिंदर सिंह का पंजाब के मुख्यमंत्री पद से इस्तीफा दिया, उसके बाद चरणजीत सिंह चन्नी को राज्य का नया मुख्यमंत्री बनाया गया। वहीं अब नवजोत सिंह सिद्धू ने पंजाब कांग्रेस अध्यक्ष पद से इस्तीफा दे दिया है।I told you so…he is not a stable man and not fit for the border state of punjab.— Capt.Amarinder Singh (@capt_amarinder) September 28, 2021सोनिया गांधी को लिखा पत्र बता दें कि नवजोत सिंह सिद्धू ने काग्रेस अध्यक्ष सोनिया गांधी को एक पत्र लिखकर इस संबंध में जानकारी दी है। पत्र में सिद्धू ने यह भी कह कि वे कांग्रेस का हिस्सा बने रहेंगे।pic.twitter.com/L5wdRql5t3— Navjot Singh Sidhu (@sherryontopp) September 28, 2021
python nlp stanford-nlp hindi nlp-question-answering
1个回答
0
投票

您可以使用Python正则表达式:

import re
pattern=r'[^\w\s]+'
re.sub(pattern, '', text)

\w
是一个特殊的正则表达式字符,匹配 Unicode 字母数字字符以及下划线 (
_
);
\s
匹配空格。

如果您想包含/排除其他字符,您可以修改匹配模式。例如,如果您还想删除下划线,则可以:

pattern = r'[^\w\s_]+'

© www.soinside.com 2019 - 2024. All rights reserved.