整容说文库 > 程序代码 > 教育资讯

字符串取值

来源:学生作业帮助网 编辑:整容说文库 时间:2019/10/23 05:28:56 程序代码
字符串取值程序代码
str1的值可能是:
str1 = "<font color='#FF00FF'>我爱我家_Disy</font>"
也可能是:
str1 = "<font color=green><b>Love分享</b></font><font color=red>我的开心</font>"


如果是str1的话.取出字符串:  我爱我家_Disy
如果是str2的话.取出字符串:  Love分享我的开心

意思就是去掉HTML标签.
不要分成2句写出来啊.我要一个通用的.能去掉HTML标签的方法.谢谢大家.
应该不能一句话去掉
自己写一个函数
使用正则式对字符进行判断
替换掉其中的HTML标签
不过即使使用正则式也不能保证一定替换出的结果就是你想要的
正则式试过.有些数据替换后就是不对.我以为我写的不对.
晕呀~~``
这种替换字符的一般就用正则式了
可能你写淂不太对吧
代码完全正确的情况下结果不符合要求也是正常的
55~~岂不是要改数据格式.谁99我啊~~~~   ..>_<..
可以用欠套的SPLIT函数分割然后用循环的方式输出!
偶记得有一种笨办法
举例说明一下
例如你建立一个div名字叫做CDiv
从数据库中取出带有HTML的字符
使用CDiv.innerHTML=字符
然后使用CDiv.innerText应该就能获得不带HTML的内容了
可以试试
补充测试代码给你
<HTML>

<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
<TITLE>新建网页 1</TITLE>
</HEAD>

<BODY>
<DIV ID="cdiv"></DIV>
<SCRIPT LANGUAGE="vbscript">
cdiv.innerHTML="<font color='red'><b>aaa</b></font>"
msgbox cdiv.innerText
</SCRIPT>
</BODY>

</HTML>
可以用欠套的SPLIT函数分割然后用循环的方式输出!
、、、、、、、、、、、、、、、、、、、、、、、、、、、
不知道这种方法怎样实现呢?
<%
function DelHtml(htmlCode)
 dim iStart,iEnd
 dim sTemp
 sTemp=htmlCode
 iStart=instr(sTemp,"<")
 iEnd=instr(sTemp,">")
 do while iStart>0 and iEnd>0 and iEnd-iStart>0
  sTemp=replace(sTemp,mid(sTemp,iStart,iEnd-iStart+1),"")
  iStart=instr(sTemp,"<")
  iEnd=instr(sTemp,">")  
 loop
 DelHtml=sTemp
end function
Response.Write DelHtml("<font color=green><b>Love分享</b></font><font color=red>我的开心</font>")
%>
其实很多功能都可以利用控件的属性和方法来实现
比写代码要方便多了
<%
str1 = "<font color='#FF00FF'>我爱我家_Disy</font>"
str2 = "<font color=green><b>Love分享</b></font><font color=red>我的开心</font>"
Set regEx = New RegExp               ' 建立正则表达式。
regEx.Pattern = "<[^<>]*>"      ' 设置模式。
regEx.IgnoreCase = True
regEx.Global = True 
response.write regEx.replace(str1,"")
response.write regEx.replace(str2,"")
%>
tigerwen01(小虎)(编程艺术化) 的函数可以搞定哦..
谢谢大家的帮助~~结帖
<%
function DelHtml(str1)
  Set objRegExp = New Regexp  
  objRegExp.IgnoreCase = True
  objRegExp.Global = True
  objRegExp.Pattern = "<[^>]*>"
  DelHtml = objRegExp.Replace(str1, "")
%>
这种东东,显然用正则才是正道啊。
str1 = "<font color=green><b>Love分享</b></font><font color=red>我的开心</font>"
sx=split(str1,"<")
for i=1 to ubound(sx)
s=s&mid(sx(i),instr(sx(i),">")+1,len(sx(i))-instr(sx(i),">"))
next
response.Write(s&"<br>")
程序代码