C# 把ABCD转换成数字

本文介绍了一个用于将选择题答案从字母形式转换为数字形式的工具,适用于单选或多选题型。该工具通过去除HTML标签并转换答案选项为统一格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

每倒题得选项可能是多选或者单选。

 public static string LetterTransformationNum(string answer, int type)
        {
            string num = "";
            if (type == 1 || type == 2) //(1和2代表单选和多选)
            {
                var str = answer; //去答案
                str = TrimAllHtmlTag(str).Replace("】", "");
                StringBuilder sp = new StringBuilder();
                for (int i = 0; i < str.Length; i++)
                {
                    if (str[i] >= 'A' && str[i] <= 'G')
                    {
                        sp.Append((char)str[i] - 'A');
                    }
                    else
                    {
                        sp.Append(str[i]);
                    }
                }
                object numanswer = sp.ToString();
                num = Convert.ToString(numanswer);
            }

            num = String.Join(",", (from c in num select c + "").ToArray()); //加,

            string answerValue = "[" + num + "]";
            return answerValue;
        }

  去掉一些特殊得字符正则

 public static string TrimAllHtmlTag(string str)
        {
            string reg = "<([^>]+?)>";
            return Regex.Replace(str, reg, "").Trim();
        }

  

转载于:https://www.cnblogs.com/sunliyuan/p/9203223.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值