如何拆分字符串?

时间:2011-03-23 17:08:18

标签: c#

<span style="cursor: pointer;">$$</span>

如何从此字符串中获取<span style="cursor: pointer;"></span>。一切都在$$。

无需使用正则表达式。

3 个答案:

答案 0 :(得分:10)

嗯,你可以使用:

string[] bits = input.Split(new string[]{"$$"}, StringSplitOptions.None);

请注意,与使用char分隔符的重载不同,您来提供StringSplitOptions,而来手动创建数组。 (当然,如果您要反复执行此操作,则可能需要重用该数组。)您还可以选择指定要将输入拆分为的最大令牌数。有关详细信息,请参阅string.Split overload list

简短但完整的计划:

using System;

public static class Test
{
    public static void Main()
    {
        string input = "<span style=\"cursor: pointer;\">$$</span>";
        string[] bits = input.Split(new string[]{"$$"},
                                    StringSplitOptions.None);

        foreach (string bit in bits)
        {
            Console.WriteLine(bit);
        }
    }    
}

当然,如果您知道只有两部分,另一个选择是使用IndexOf

int separatorIndex = input.IndexOf("$$");
if (separatorIndex == -1)
{
    throw new ArgumentException("input", "Oh noes, couldn't find $$");
}
string firstBit = input.Substring(0, separatorIndex);
string secondBit = input.Substring(separatorIndex + 2);

答案 1 :(得分:3)

或者您可以使用IndexOf查找“$$”,然后使用Substring方法获取任何一方。

实施例

        string s = "<span style=\"cursor: pointer;\">$$</span>";
        string findValue = "$$";

        int index = s.IndexOf(findValue);

        string left = s.Substring(0, index);
        string right = s.Substring(index + findValue.Length);

答案 2 :(得分:1)

您可以使用SubString()方法:

string _str = "<span style=\"cursor: pointer;\">$$</span>";
int index = _str.IndexOf("$$");
string _a = _str.Substring(0, index);
string _b = _str.Substring(index + 2, (_str.Length - index - 2));

米蒂亚