示例字符串:
"< harshal bhamare > sfjkgdbgfbguifg < fbgfg >";
我想删除以#开头的总字符串"< harshal bhamare >"
"<"
以">"
结尾。
答案 0 :(得分:3)
您可以使用正则表达式:
<.*?>(.*)<.*?>
它删除括号内的所有内容,包括括号本身(?
使其不贪心,因此允许文本块内的<
和>
),并捕获文本之间。您可以通过获取第一个捕获来解决这个问题,就像在这个C#代码中一样:
string output = Regex.Replace(input, @"<.*>(.*)<.*>", "$1");
答案 1 :(得分:0)
如果您不想使用正则表达式解决方案,您可以简单地遍历每个字符并观察开始/结束字符,省略其中的字符。
StringBuilder sb = new StringBuilder();
bool skip = false;
foreach (char c in "< harshal bhamare > sfjkgdbgfbguifg < fbgfg >")
{
if (c.Equals('<')) skip = true;
if (c.Equals('>')) { skip = false; continue; }
if (!skip) sb.Append(c);
}
System.Console.WriteLine(sb.ToString());