【问题标题】:Dedicated Regular Expression for Persian alphabet [duplicate]波斯字母的专用正则表达式[重复]
【发布时间】:2013-06-23 08:25:52
【问题描述】:

如何定义一个只接受波斯字母字符的正则表达式?

我尝试了以下功能,但无法正常工作:

function Just_persian(str){
  var p=/[پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ\s]+$/;
  if(!str.match(p))
    alert("invalid format");
}

【问题讨论】:

  • @BhavikKama:我什么都没写。我的问题是我该怎么做。
  • stack-overflow 是关于在您尝试过某事或用 Google 搜索后找到解决方案。您是否尝试过搜索任何内容?
  • @BhavikKama:是的,非常喜欢!但我没有找到我的答案。请帮帮我
  • @BhavikKama:对不起,我是 stack-overflow 的初学者。为什么我的问题评分为 -2 ????
  • 因为在 stackoverflow 中不允许用勺子喂食..只需询问您的问题是什么您尝试过什么以及为解决您的问题采取了哪些步骤。只需编辑您对上述详细信息的问题。谢谢

标签: javascript regex


【解决方案1】:

波斯字符在Arabic Unicode block内,范围从U+0600到U+06FF(在字符类中指定为\u0600-\u06FF)。

function just_persian(str){
    var p = /^[\u0600-\u06FF\s]+$/;

    if (!p.test(str)) {
        alert("not format");
    }
}

从这个问题适应 JavaScript:Regex for check the input string is just in persian language

【讨论】:

  • 那么你的问题解决了吗??
  • 答案是完全错误的。 @"..." 怎么了?当您从 .NET 代码复制到 JS 时,它们不会神奇地工作。
  • @nhahtdh 优雅地解决了您自己的问题,而没有投反对票或提出自己的答案。给他的道具。
  • @nhahtdh 是目标 c 的开发人员。我只是把逻辑放在了上面。 @ 在目标 c 中编写时在字符串中添加了前缀。我只是给她一个合乎逻辑的答案语法,一切都不重要
  • @BhavikKama 我尝试过使用您的代码,但他总是很警觉,所以请您解释一下这个功能是自动翻译输入值或直接输入波斯语。
【解决方案2】:

波斯字符在范围内:[\u0600-\u06FF] 和:[\s]

使用此代码:

function Just_persian(str){
  var p=/@"^([\u0600-\u06FF]+\s?)+$"/;
  if(!str.match(p))
    alert("not format");
}

此模式包括字母和空格字符。

【讨论】:

  • 不包含波斯语特殊字符:[گ چ پ ژ ]
【解决方案3】:

您可以使用persianRex,它可以检测不同键盘布局中的所有波斯语字符,并且它是开源的。

下载它并将其放在您的项目文件夹中。然后将其包含在您的 HTML 中,如下所示:

<script src="persian-rex/dist/persian-rex.js"></script>

然后在你的 Javascript 中你可以这样做:

function Just_persian(str){
  if(persianRex.text.test(str))
    alert("not format");
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-09
    • 2017-01-04
    • 1970-01-01
    • 2015-01-20
    • 1970-01-01
    • 2018-01-29
    • 2013-06-03
    相关资源
    最近更新 更多