小编s3i*_*ani的帖子

如何 grep 查找带有变音符号的阿拉伯字符?

我有阿拉伯语塔什基尔语TXT的大文件,我正在尝试查找包含特定模式mashkula的 行,我尝试了以下语法:\xd9\x8e \xd9\x8b \xd9\x8f \xd9\x8c \xd9\x91 \xd9\x92 \xd9\x8dgrep

\n
cat file.txt | grep "\xd8\xa7\xd9\x87\xd9\x84\xd8\xa7"\n
Run Code Online (Sandbox Code Playgroud)\n

在我插入塔什基尔标记之前,这不会返回任何内容:

\n
cat file.txt | grep "\xd8\xa3\xd9\x87\xd9\x92\xd9\x84\xd8\xa7\xd9\x8b"\n
Run Code Online (Sandbox Code Playgroud)\n

我得到了正确的输出

\n

\xd8\xa3\xd9\x87\xd9\x92\xd9\x84\xd8\xa7\xd9\x8b

\n

我也尝试过

\n
grep -P "[\xd9\x8f\\ \xd9\x91\\ \xd9\x8e\\ \xd9\x8b\\ \xd9\x90\\ \xd9\x8d\\ \xd9\x8c\\ \xd9\x92\\ \\~]|[\xd8\xa7\xd9\x87\xd9\x84\xd8\xa7]" file.txt\n
Run Code Online (Sandbox Code Playgroud)\n

这将返回不同模式中的所有匹配字符:

\n
\xd8\xa3\xd9\x87\xd9\x92\xd9\x84\xd8\xa7\xd9\x8b \xd8\xa3 ... \xd9\x87\xd9\x92.. \xd9\x84\xd9\x8b\xd8\xa7 \xd8\xa3\xd9\x86\xd9\x92\xd8\xaa\xd9\x8e \xd9\x84\xd9\x8e\xd9\x8a\xd9\x92\xd9\x84\xd8\xa7\xd9\x8b ..\n
Run Code Online (Sandbox Code Playgroud)\n

如何使用 grep 匹配阿拉伯语变音标记?\n在使用 grep 之前是否可以从文本中删除塔什基尔标记?\n我的操作系统是 Ubuntu 18.04

\n

更新:此时,我使用以下命令从文本中删除塔什基尔标记:\n sed "s/[\xd9\x8f \xd9\x91 \xd9\x8e \xd9\x8b \xd9\x90 \xd9\x8d \xd9\x8c \xd9\x92]//g",然后我就可以 …

command-line grep arabic text-processing

6
推荐指数
1
解决办法
1039
查看次数

标签 统计

arabic ×1

command-line ×1

grep ×1

text-processing ×1