asp中用过滤html代码,但要保留p标记
我用的是fck编辑器,我想通过过滤把编辑内容中的Html代码给过滤掉,但同时要保存<p>……</p>标记,不知道大家谁有好的方法没有?我查了一些资料,但都不是很完美,例如...
我用的是fck编辑器,我想通过过滤把编辑内容中的Html代码给过滤掉,但同时要保存<p>……</p>标记,不知道大家谁有好的方法没有?
我查了一些资料,但都不是很完美,例如编辑内容如下:
<p>
<div style="width:300px;height:400px;">
<span style="color:red">编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容……</span>
</div>
</p>
我现在想把除<p>、</p>标签保留,其余的标签全部过滤掉,包括style属性。
tyjstwp 提供的函数 Function replaceWithoutP 好像也有问题喔,把后边的</p>也给过滤掉了 展开
我查了一些资料,但都不是很完美,例如编辑内容如下:
<p>
<div style="width:300px;height:400px;">
<span style="color:red">编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容编辑内容……</span>
</div>
</p>
我现在想把除<p>、</p>标签保留,其余的标签全部过滤掉,包括style属性。
tyjstwp 提供的函数 Function replaceWithoutP 好像也有问题喔,把后边的</p>也给过滤掉了 展开
2个回答
展开全部
调用这个方法就可以了:
Function replaceWithoutP(ContentStr)
Dim ClsTempLoseStr,regEx
ClsTempLoseStr = Cstr(ContentStr)
Set regEx = New RegExp
regEx.Pattern = "(<(\/){0,1}[^<>p]*>)|(<(\/){0,1}[^<>]+p[^<>]*>)"
regEx.IgnoreCase = True
regEx.Global = True
ClsTempLoseStr = regEx.Replace(ClsTempLoseStr,"")
replaceWithoutP = ClsTempLoseStr
Set regEx = Nothing
End Function
兄弟你可以试一下
其中(<(\/){0,1}[^<>p]*>)|(<(\/){0,1}[^<>]+p[^<>]*>)的意思是:以<或者</开头,内容不包含<和>和p,以>结尾;或者以<或者</开头内容包含p但是p前面有别的字符p后面为任意字符,以>结尾
把这些字符串都替换掉就得到你要的结果了
Function replaceWithoutP(ContentStr)
Dim ClsTempLoseStr,regEx
ClsTempLoseStr = Cstr(ContentStr)
Set regEx = New RegExp
regEx.Pattern = "(<(\/){0,1}[^<>p]*>)|(<(\/){0,1}[^<>]+p[^<>]*>)"
regEx.IgnoreCase = True
regEx.Global = True
ClsTempLoseStr = regEx.Replace(ClsTempLoseStr,"")
replaceWithoutP = ClsTempLoseStr
Set regEx = Nothing
End Function
兄弟你可以试一下
其中(<(\/){0,1}[^<>p]*>)|(<(\/){0,1}[^<>]+p[^<>]*>)的意思是:以<或者</开头,内容不包含<和>和p,以>结尾;或者以<或者</开头内容包含p但是p前面有别的字符p后面为任意字符,以>结尾
把这些字符串都替换掉就得到你要的结果了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询