gpt4 book ai didi

c# - 检测字符串中的垃圾字符

转载 作者:太空狗 更新时间:2023-10-29 22:34:00 25 4
gpt4 key购买 nike

我想允许用户输入字符、数字和特殊字符,但不允许输入 ascii 值大于 127 的垃圾字符(例如 ♠ ♣ 等)。

我有这样的功能

            for (int i = 0; i < value.Length; i++) // value is input string
{
if ((int)value[i] < 32 || (int)value[i] > 126)
{

// show error

}

}

这会使代码变慢,因为我必须比较每个字符串及其字符。谁能建议更好的方法?

最佳答案

一方面,您可以使代码更简单:

foreach (char c in value)
{
if (c < 32 || c > 126)
{
...
}
}

或者使用 LINQ,如果您只需要知道任何字符是否为非 ASCII:

bool bad = value.Any(c => c < 32 || c > 126);

...但从根本上说,如果不遍历字符串中的每个字符,您将无法检测到非 ASCII 字符...

关于c# - 检测字符串中的垃圾字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7254232/

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