Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的C#单十范畴_Javascript_C# - Fatal编程技术网

JavaScript中的C#单十范畴

JavaScript中的C#单十范畴,javascript,c#,Javascript,C#,我目前正在将一些C#代码翻译成JavaScript,但有一件事我陷入了困境。 JavaScript中的等价物是什么: if (CharUnicodeInfo.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark) { // Do something } 我无法理解JavaScript中是否有这一点。Unicode类别枚举似乎映射到Unicode字符数据库的常规类别列表。JavaScript正则表达式引擎的特性似乎能够映射这些一般类别

我目前正在将一些C#代码翻译成JavaScript,但有一件事我陷入了困境。 JavaScript中的等价物是什么:

if (CharUnicodeInfo.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark)
{
  // Do something
}

我无法理解JavaScript中是否有这一点。

Unicode类别枚举似乎映射到Unicode字符数据库的常规类别列表。JavaScript正则表达式引擎的特性似乎能够映射这些一般类别

举个例子,

if (CharUnicodeInfo.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark)
{
  // Do something
}
将映射到

if (!/\p{General_Category=Nonspacing_Mark}/.test(c)) {
  // Do something
}
但我相信可以缩短到

if (!/\p{Nonspacing_Mark}/.test(c)) {
  // Do something
}

根据@derloopkat帮助,我能够使用以下中提供的解决方案解决此问题:

谢谢大家的帮助

    const str = "Crème Brulée"
    str.normalize("NFD").replace(/[\u0300-\u036f]/g, "")
    > "Creme Brulee"

我怀疑是否有任何等价物你能或多或少地向我解释正在进行的验证,因为我过去从未使用过这个吗?有…如果问题中有一个,显示一个导致条件为真的
c
值和一个导致条件为假的值…我认为c#中的这段代码是在检查字符没有非空格字符(例如西班牙语重音字符á、é、í、ó、ú)。看看这个,然后。第二个链接将告诉您如何使用Javascript检测不同语言中的字符。