You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写仅匹配阿拉伯文、英文字母及空格的JavaScript正则表达式

问题根源

你当前使用的正则只设置了结尾锚点$,没有设置开头锚点^,只会校验字符串末尾的字符是否符合规则,只要末尾是阿拉伯字母、英文字母或空格,即使中间夹带数字、特殊字符也会被判定为匹配成功。

修正后的正则

/^[\u0620-\u064A a-zA-Z]+$/

规则说明

  • 开头添加^锚点,强制要求从字符串的第一个字符到最后一个字符,所有字符都必须匹配方括号内的规则
  • 方括号内的规则保留了你原有需求:
    • \u0620-\u064A匹配阿拉伯字母
    • 空格匹配允许输入的空格字符
    • a-zA-Z匹配大小写英文字母
  • 如果你需要覆盖更全的阿拉伯语字符(包括变音符号、阿拉伯语衍生语言字符等),可以将阿拉伯字符范围调整为\u0600-\u06FF

测试效果

  • 匹配通过的合法字符串:Hello World、مرحبا بالعالم、混合Hello مرحبا
  • 匹配拦截的非法字符串:سم111111ر、test@123、hello#world

内容的提问来源于stack exchange,提问作者Samar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 07:27:02