7

I am trying to detect Arabic characters in a webpage's HTML using Notepad++ CTRL+F with regular expressions. I am entering the following as my search terms and it is returning all characters.

[\u0600-\u06FF]

Sample block of random text I'm working with -

awr4tgagas
بqa4tq4twْq4tw4twtfwd
awfasfrw34جَ4tw4tg
دِيَّة عَرqaw4trawfَبِيَّ

Any ideas why this Regular Expression won't detect the Arabic characters properly and how I should go about this? I have the document encoded as UTF-8.

Thanks!

4

2 回答 2

15

这是因为 Notepadd++ 正则表达式引擎是 PCRE,它不支持您提供的语法。

要匹配 unicode 代码点,您必须使用\x{NNNN}这样您的正则表达式变为:

[\x{0600}-\x{06FF}]
于 2013-08-23T22:00:19.437 回答
10

因为 Notepad++ 的正则表达式实现要求你使用

\x{NNNN}

符号来匹配 Unicode 字符。

在你的例子中,

\x{0628} 

可用于匹配ب(bāʾ,bet,beth,vet) 字符。

\u符号用于匹配大写字母。

请参阅http://sourceforge.net/apps/mediawiki/notepad-plus/index.php?title=Regular_Expressions#Ranges_or_kinds_of_characters

有关 Notepad++ 正则表达式语法的解释。

于 2013-08-23T21:58:33.977 回答