gpt4 book ai didi

VB.net 的 IsNumeric 将 £ 视为数字吗?

转载 作者:行者123 更新时间:2023-12-04 23:59:03 26 4
gpt4 key购买 nike

这有点令人困惑,为什么会这样?

Console.WriteLine(IsNumeric("$0")) - False

Console.WriteLine(IsNumeric("€0")) - False

Console.WriteLine(IsNumeric("£0")) - True

Console.WriteLine(IsNumeric("£")) - False

对我来说似乎很奇怪,它这样做的原因是什么

编辑:最后也有效:
Console.WriteLine(IsNumeric("300£")) - True

Console.WriteLine(IsNumeric("300£0")) - False

Console.WriteLine(IsNumeric("£300£")) - False

最佳答案

生活在意大利 - 在意大利语环境中运行

Console.WriteLine(IsNumeric("$0")) ' False
Console.WriteLine(IsNumeric("€0")) ' True
Console.WriteLine(IsNumeric("£0")) ' False
Console.WriteLine(IsNumeric("£")) ' False

虽然这会让你回来永远是真的
using System.Globalization;

Console.WriteLine(MyIsNumeric("$0", NumberStyles.AllowCurrencySymbol, "en-US"))
Console.WriteLine(MyIsNumeric("€0", NumberStyles.AllowCurrencySymbol, "it-IT"))
Console.WriteLine(MyIsNumeric("£0", NumberStyles.AllowCurrencySymbol, "en-GB"))


Public Function MyIsNumeric(ByVal val as String, ByVal NumberStyle as NumberStyles, cName as String) as Boolean
Dim result as Double
return Double.TryParse(val,NumberStyle, new CultureInfo(cName), result)
End Function

所以我们可以得出结论 IsNumeric(最初在 VB6 运行时中定义)是 smart如果当前语言环境货币符号在输入字符串之前或之后,则足以从其解析中排除。

关于VB.net 的 IsNumeric 将 £ 视为数字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13183910/

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