gpt4 book ai didi

C#如何从字符串中读取两位数到字符

转载 作者:行者123 更新时间:2023-11-30 22:59:47 24 4
gpt4 key购买 nike

嗨,我知道这可能有点傻。但是我需要将我的字符串转换为数字,因此我需要使用 char 循环遍历运算符。但是,如果我尝试输入一个两位数或更多位数字,该数字会被分成一位数。例如。

string str="2+16-42X"

char[] ch=str.toCharArray();

输出为(忽略逗号)

2,+,1,6,-,4,2,X

我想得到 2,+,16,-42,X关于如何解决这个问题的任何建议?谢谢

最佳答案

你可以写一个简单的词法分析器:

string str="2+16-42X";

StringBuilder currentNumber = new StringBuilder();
List<string> tokens = new List<string>();

foreach(char chr in str) {
if (Char.IsDigit(chr)) {
currentNumber.Append(chr);
}
else {
if (currentNumber.Length > 0) {
tokens.Add(currentNumber.ToString());
currentNumber.Clear();
}
if (chr == '-') {
currentNumber.Append(chr);
}
else {
tokens.Add(chr.ToString());
}
}
}
if (currentNumber.Length > 0) {
tokens.Add(currentNumber.ToString());
}

tokens 列表包含您的数字和符号。

关于C#如何从字符串中读取两位数到字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51946773/

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