C# 删除C.net中的文本
我有一根绳子C# 删除C.net中的文本,c#,C#,我有一根绳子 string str; str = "This is my new string. "<script>" Hi this is XYZ "</script>""; 现在我想使用C.net代码删除文本,从到包括标记 谢谢,您应该检查一下 有了它,你可以找到它,然后删除 如果您想从特定长度中删除文本,这应该可以获取脚本标记[^之间的所有内容,例如 "my name is testing" 在这里,您要删除的是 稍后只需使用indexof函数,使用subst
string str;
str = "This is my new string. "<script>" Hi this is XYZ "</script>"";
现在我想使用C.net代码删除文本,从到包括标记
谢谢,您应该检查一下
有了它,你可以找到它,然后删除
如果您想从特定长度中删除文本,这应该可以获取脚本标记[^之间的所有内容,例如
"my name is testing"
在这里,您要删除的是
稍后只需使用indexof函数,使用substring方法将字符串替换为null或其他内容
在c语言中,在输入数据之前,您可以像这样过滤字符串或用户正则表达式,这就是我用来删除字符串中html标记的方法
public static string ClearHtmlTags(string html)
{
if (string.IsNullOrWhiteSpace(html))
return html;
html = html.Trim();
string[] hs = html.Split("<>".ToArray());
bool skip = false;
StringBuilder sb = new StringBuilder();
foreach (string s in hs)
{
if (!skip)
sb.Append(s);
skip = !skip;
}
return sb.ToString();
}
通过简单的修改,您将获得您的方法
public static string ClearHtmlTags(string html)
{
if (string.IsNullOrWhiteSpace(html))
return html;
html = html.Trim();
string[] hs = html.Split("<>".ToArray());
bool skip = false;
bool skipTag = false;
StringBuilder sb = new StringBuilder();
foreach (string s in hs)
{
if (!skip)
{
if (!skipTag)
sb.Append(s);
}
else
{
skipTag = s == "script";
}
skip = !skip;
}
return sb.ToString();
}
您可以使用以下内容:
Regex.Replace(inputString, "<script>([a-z]|[A-Z])*</script>", "");
现在,这将只允许脚本标记中的字母数字文本,特别是脚本标记或任何通用HTML标记。是否也要支持嵌套标记?关于自动关闭标记如何?是否要从str变量中删除文本?是否尝试过str=string.Empty?要删除哪一位文本?不清楚?您有什么建议已经试过了吗?你能重新表述一下这个问题吗,没有意义。手术后str会是什么样子?检查下面的链接在正常情况下我会同意,但在问题中,他给出的答案似乎很简单。链接应该是什么?它解决了什么问题http://www.c-sharpcorner.com/UploadFile/prasad_1/RegExpPSD12062005021717AM/RegEx似乎不起作用的pPSD.aspx。它应该为中的正则表达式提供一个教程c@ChrisF也许会有一段时间,谁知道呢,这不是一门精确的科学,应该是toughI没有投反对票,但它会错过元素中的空格和几乎所有内容。这不是评论,而是答案。也许这就是问题所在?你可以删除单击“删除”链接可以删除。