如何正则表达式匹配整个字符串而不是单个字符

Moh*_*jib 3 javascript regex validation arabic

我想实现在阿拉伯字母的字符输入“阿尔法”的验证,使用JavaScript正则表达式/[\u0600-\u06FF]/的指示在这个职位。我只想接受阿拉伯字母字符和空格。

现在的问题是它给出了以下结果:

r = /[\u0600-\u06FF]/

r.test("abcd")      // false - correct
r.test("@#$%^")     // false - correct
r.test("?")         // true  - correct
r.test("abcd$$#5?") // true  - should be false
r.test("abcd?")     // true  - should be false
Run Code Online (Sandbox Code Playgroud)

如果给出单个匹配字符,则它将整个输入归类为可接受的,即使输入的其余部分充满了不可接受的字符。我应该使用什么正则表达式?

use*_*951 5

您需要添加^$锚定到正则表达式,以及+允许多个字符。

尝试这个:

/^[\u0600-\u06FF]+$/
Run Code Online (Sandbox Code Playgroud)

我不确定你提到的“阿拉伯空格”是否包含在那里的字符范围内,但如果你想在字符串中允许空格,那么只需\s[]括号内添加一个。