过滤字符串html标签方法
过滤字符串html标签方法,如果输入的过滤标签为“*”,那么给字符串加上p标签
public static string noTagHtml(string str, string tagname)
{
string zz = @"(<" + tagname + ".*?>)|(</" + tagname + ">)";
if (tagname == "script") zz = "(<" + tagname + ".*?>)*(</" + tagname + ">)";
//过滤除P标签的所有标签,不清除P标签里css样式
else if (tagname == "p")
{
//zz = @"</?\s*(?!p|br)+\b[^>]*>";
zz = @"</?\s*(?!br)+\b[^>]*>";
Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline);
str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase);
str = r.Replace(str, "");
} else if (tagname == "*")
{
zz = @"(<([^>]*)>)";
Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline);
str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase);
str = r.Replace(str, "");
Regex regex1 = new Regex(@"\n", RegexOptions.IgnoreCase);
str = regex1.Replace(str, "");
Regex regex2 = new Regex(@"\n[\s| ]*\r", RegexOptions.IgnoreCase);
str = regex2.Replace(str, "");
string[] hangCounts = str.Split('\r'); string strTempList = "";
for (int k = ; k < hangCounts.Length; k++)
{
if (!strTempList.Equals(""))
{
strTempList = strTempList + "";
}
if (!hangCounts[k].Equals(""))
{
strTempList = strTempList + "<p>" + hangCounts[k] + "</p>\r\n";
}
}
strTempList = strTempList + "";
str = strTempList;
}
else
{ Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline);
str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase);
str = r.Replace(str, ""); }
return (str); }
过滤字符串html标签方法的更多相关文章
- 网页内容的html标签补全和过滤的两种方法
网页内容的html标签补全和过滤的两种方法: 假设你的网页内容的html标签显示不全,有些表格标签不完整而导致页面混乱,或者把你的内容之外的局部html页面给包括进去了,我们能够写个函数方法来补全ht ...
- c# 过滤字符串中的重复字符
有字符串"a,s,d,v,a,v",如果想去除其中重复的字符,怎么做? 下面是一个方法,用Hashtable来记录唯一字符,排除重复字符,仅供参考. 1.过滤方法: public ...
- javascript 过滤字符串中的中文与空格
js 如何过滤字符串里中文或空格呢?方法有很多种,我们可以使用替换与正则表达式来实现,本文向大家介绍两个简单的例子,感兴趣的码农可以参考一下. 1.javascript过滤空格: function m ...
- 7.python字符串-内置方法分析
上篇对python中的字符串内置方法进行了列举和简单说明,但这些方法太多,逐一背下效率实在太低,下面我来对这些方法按照其功能进行总结: 1.字母大小写相关(中文无效) 1.1 S.upper() -& ...
- 《Python CookBook2》 第一章 文本 - 过滤字符串中不属于指定集合的字符 && 检查一个字符串是文本还是二进制
过滤字符串中不属于指定集合的字符 任务: 给定一个需要保留的字符串的集合,构建一个过滤函数,并可将其应用于任何字符串s,函数返回一个s的拷贝,该拷贝只包含指定字符集合中的元素. 解决方案: impor ...
- python字符串-内置方法用法分析
1.字母大小写相关(中文无效) 1.1 S.upper() -> string 返回一个字母全部大写的副本
- ES6模板字符串之标签模板
首先,模板字符串和标签模板是两个东西. 标签模板不是模板,而是函数调用的一种特殊形式.“标签”指的就是函数,紧跟在后面的模板字符串就是它的参数. 但是,如果模板字符串中有变量,就不再是简单的调用了,而 ...
- HTML5 Audio标签方法和函数API介绍
问说网 > 文章教程 > 网页制作 > HTML5 Audio标签方法和函数API介绍 Audio APIHTML5HTML5 Audio预加载 HTML5 Audio标签方法和函数 ...
- Python之数据结构:字符串中的方法
一.过滤字符串 1.strip() (1)去掉行收尾不可见字符 a = ' wejifrow ' print a print a.strip() 结果: wejifrow wejifrow (2)st ...
随机推荐
- SOUI入门
环境:win7_64旗舰版,VS2013 发现了一个比较好用的DirectUI库——SOUI,但是写一个窗口程序不是很方便,程序初始化的地方稍显繁琐,这里稍微封装一下. 大概包含6个文件: SouiC ...
- Ext 下拉框联动第一次显示不正常的问题
做下拉框联动,异步加载数据,第一次显示时数据不准确,不要在combo_2的下拉框直接绑定store,在combo_1的改变事件里调用下面的方法 function GetAllCustomerBrand ...
- 关于const *和 * const
int main() { ; ; int const *p = &i; p = &j; *p = ; //错误,*p的值被const修饰,为只读变量,不可更改 int * const ...
- sql 判断表是否存在,判断列是否存在
判断表是否存在: 语法: SELECT * FROM dbo.SysObjects where id = object_id(N'表名') 例子: SELECT * FROM dbo.SysObjec ...
- eclipse 中执行 main 函数如何添加参数
我们通常执行 main 函数都是直接在类界面 右键 选择 Run As --> Java Application 但是如何 执行时带有参数呢? 右键 --> Run As --> R ...
- OpenCV ——双线性插值(Bilinear interpolation)
1,原理 在图像的仿射变换中,很多地方需要用到插值运算,常见的插值运算包括最邻近插值,双线性插值,双三次插值,兰索思插值等方法,OpenCV提供了很多方法,其中,双线性插值由于折中的插值效果和运算速度 ...
- JS调用OC方法
- (void)myMethod:(CDVInvokedUrlCommand*)command { NSString* echo = [command.arguments objectAtIndex: ...
- MySQL数据库MyISAM和InnoDB存储引擎的比较【转载】
转自 http://www.cnblogs.com/panfeng412/archive/2011/08/16/2140364.html MySQL有多种存储引擎,MyISAM和InnoDB是其中常用 ...
- flex超链接
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...
- actor
_timcharper1月 20 02:18 @timcharper , so what app the actor model can help, and what app the thread m ...