gpt4 book ai didi

c# - "aaaa".StartsWith( "aaa") 返回 false

转载 作者:可可西里 更新时间:2023-11-01 03:00:00 24 4
gpt4 key购买 nike

如果这不是错误,那么有人可以解释这种行为背后的原因吗?事实上,似乎每个奇数个字母都会返回 false:

string test = "aaaaaaaaaaaaaaaaaaaa";
Console.WriteLine(test.StartsWith("aa"));
Console.WriteLine(test.StartsWith("aaa"));
Console.WriteLine(test.StartsWith("aaaa"));
Console.WriteLine(test.StartsWith("aaaaa"));
Console.WriteLine(test.StartsWith("aaaaaa"));
Console.WriteLine(test.StartsWith("aaaaaaa"));

在丹麦系统上执行时产生以下输出:

True
False
True
False
True
False

最佳答案

这当然是由于您当前的文化。你可能在丹麦语中 aa 被认为是一个字母。如果您尝试改变文化……或案例,它应该会奏效。

我想我记得与匈牙利文化和字母协会有类似的行为

查看String StartsWith() issue with Danish text

例子:

using System;
using System.Globalization;

namespace Demo
{
public static class Program
{
public static void Main(string[] args)
{
System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo("da-DK");
System.Threading.Thread.CurrentThread.CurrentCulture = System.Threading.Thread.CurrentThread.CurrentUICulture;
string test = "aaaaaaaaaaaaaaaaaaaa";
Console.WriteLine(test.StartsWith("aa"));
Console.WriteLine(test.StartsWith("aaa"));
Console.WriteLine(test.StartsWith("aaaa"));
Console.WriteLine(test.StartsWith("aaaaa"));
Console.WriteLine(test.StartsWith("aaaaaa"));
Console.WriteLine(test.StartsWith("aaaaaaa"));
}
}
}

这会打印 OP 声明的内容。

关于c# - "aaaa".StartsWith( "aaa") 返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15547663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com