Microsoft Exchange ServerとActive Directoryにユーザーを作成するスクリプトがあります。ですから、スペインではユーザーの名前にアクセント記号やアクセント記号が付いているのですが、古いシステムではユーザー名が互換性を失わないようにしたいと考えています。PowerShellでどのようにアクセントを削除しますか?
これで、このような文字列をどのように整理できますか?
$name = "Ramón"
そうですか? :
static string RemoveDiacritics(string stIn)
{
string stFormD = (stIn ?? string.Empty).Normalize(NormalizationForm.FormD);
StringBuilder sb = new StringBuilder();
for (int ich = 0; ich < stFormD.Length; ich++)
{
UnicodeCategory uc = CharUnicodeInfo.GetUnicodeCategory(stFormD[ich]);
if (uc != UnicodeCategory.NonSpacingMark)
{
sb.Append(stFormD[ich]);
}
}
return (sb.ToString().Normalize(NormalizationForm.FormC));
}
私が推測:
$name = "Ramon"
+1スマートスニペットは、私はそれが期待感謝として働いて、PowerShellのにそれを変換します。 – JPBlanc
PowerShellではうまく動作します。共有のため本当にありがとうございます:D –