function check(v)
{
if(v.match(/^\d+$/)) return true
else {
alert("输入必须全是数字")
return false
}
}
</script>
<form>
<input type="text" name="txt" />
<input type="submit" onclick="return check(this.form.txt.value)" />
</form>
Patternpattern
=
Pattern.compile("\\<div.*\\>.*\\<\\/div\\>")
Matcher
matcher=pattern.matcher(htmlStr)
//你的页面源码
StringBuffer
res
=
new
StringBuffer()
while(matcher.find())
{
int
i=0
String
data=matcher.group(i)
//这里取出的是所有的div内容,每个用逗号隔开
//如果你不需要div标签,只要内容
//data=data.substring(data.indexOf(">")+1,data.lastIndexOf("<"))
res.append(data+",")
i++
}
System.out.println(res.substring(0,
res.length()-1).toString())
手写
已测
谢谢
请采纳
你不是要直接操作HTML字串吧? 如果直接操作字串的话,可以用正则处理,最简单的一种就是把字串里的所有HTML标签去掉就行了,剩下的就是“内容一内容二”了:
<html><head>
<script language="javascript">
function Window_Load(){
var str = '<td align="center"><ul class="ul1"><li>内容一</li><li>内容二</li></ul></td>'
var reg = /<[^>]+>/g
alert(str.replace(reg,"")) //返回: "内容一内容二"
}
</script>
</head>
<body onload="Window_Load()">
</body>
</html>
如果每个LI的内容都要单独提取出来做其他处理,可以用下面这种方式:
<html><head>
<script language="javascript">
function Window_Load(){
var str = '<td align="center"><ul class="ul1"><li>内容一</li><li>内容二</li></ul></td>'
var reg = /<(li)[^>]*>([^<]+)<\/\1\s*>/g
var contents = []
while(reg.exec(str)){
//获得单独li下的内容,可以对这个字串做其他处理,然后再放入数组
var content = RegExp.$2
contents .push(content )
}
alert(contents .join(""))
}
</script>
</head>
<body onload="Window_Load()">
</body>
</html>