You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#循环的else块中查找竖线"|"后的字符并判断

C#循环中提取竖线"|"后字符并判断的实现

针对你给出的代码场景,在else代码块里可以通过以下两种方式提取竖线后的字符并进行判断:

方法1:使用Split分割字符串

直接用竖线作为分隔符拆分字符串,取拆分后的第二个元素即可。建议先判断字符串是否包含竖线,避免出现索引越界的问题:

foreach (var testing in TestQuestion.Split(','))
{
    if (testing.Equals("Table|Y"))
    {
        order.OrderProperties.Add(new OrderProperty("A")
        {
            // 原有逻辑代码
        });
    }
    else
    {
        // 先检查当前字符串是否包含竖线
        if (testing.Contains('|'))
        {
            string afterPipe = testing.Split('|')[1];
            // 根据竖线后的字符执行对应逻辑
            switch (afterPipe)
            {
                case "T1":
                    // 处理Test|T1的业务逻辑
                    break;
                case "T2":
                    // 处理Test|T2的业务逻辑
                    break;
                case "T3":
                    // 处理Test|T3的业务逻辑
                    break;
                default:
                    // 处理其他未匹配到的情况
                    break;
            }
        }
        else
        {
            // 处理字符串不包含竖线的异常场景
        }
    }
}

方法2:使用IndexOf+Substring截取字符

如果担心Split会创建额外数组,也可以通过索引定位的方式直接截取竖线后的内容:

foreach (var testing in TestQuestion.Split(','))
{
    if (testing.Equals("Table|Y"))
    {
        order.OrderProperties.Add(new OrderProperty("A")
        {
            // 原有逻辑代码
        });
    }
    else
    {
        int pipeIndex = testing.IndexOf('|');
        // 确保竖线存在且不在字符串末尾
        if (pipeIndex != -1 && pipeIndex < testing.Length - 1)
        {
            string afterPipe = testing.Substring(pipeIndex + 1);
            // 用if-else或switch做判断逻辑
            if (afterPipe == "T1")
            {
                // Test|T1的处理逻辑
            }
            else if (afterPipe == "T2")
            {
                // Test|T2的处理逻辑
            }
            // 其他判断分支...
        }
        else
        {
            // 处理无竖线或竖线位置异常的情况
        }
    }
}

两种方法都能满足需求:第一种代码更简洁易读,第二种在性能上略有优势(差异极小,常规场景下可忽略),你可以根据实际业务场景选择使用。

内容的提问来源于stack exchange,提问作者test test

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 04:55:24