用正则实现下面的效果:
判断一个字符串是否以"人数(5)" 开始(注:括号里的数字可以是不确定整数,数字是不能以0开头的整数),并且字符串只能包含一个这样的匹配。 如果匹配上了就把括号中的数字取出来。 请教如何实现
判断一个字符串是否以"人数(5)" 开始(注:括号里的数字可以是不确定整数,数字是不能以0开头的整数),并且字符串只能包含一个这样的匹配。 如果匹配上了就把括号中的数字取出来。 请教如何实现
解决方案 »
- 关于jsp页面单选按钮的问题
- jboss的XML配置文件里的回车都成了黑色的小方块,怎么解决啊,看着乱
- 关于freemarker.properties自动导入ftl我无效的问题
- ==========在SSH框架中如何使用jspsmartupload上传文件========
- 请问如何屏蔽超链接的参数不在地址栏里显示?
- jsp调用
- 连接JDBC的两种方式有什么不一样?
- 大家帮忙看看这一小段代码(在线)
- 通过<jsp:param name="" value=""/>传中文为什么显示乱码?
- 如何在JSP中建立与ACCESS数据库的连接关系?
- Jsp页面保存时的路径
- jsp页面分页显示查询到的数据库记录
Pattern pattern = Pattern.compile("(人数\\([1-9]\\d*\\)){1}");
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {
str = matcher.group();
System.out.println(str);
}
给你一个纯java的。String s = "人数(5)";
int mynum;
if("人数(".equals(s.substring(0, 3))){
String num[] = s.split("(")[1].split(")");
if(num.length>1&&!"0".equals(num[0].substring(0,1))){
try{
mynum = Integer.valueOf(num[0]);
}catch(Exception e){
}
}
}
System.out.println(mynum);
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<script type="text/javascript"> function check()
{
var a = document.getElementById('num').value;
var v =/^人数\([1-9]\d*\)$/;
var b = /\D/;
if(v.test(a)){
alert('Yes');
a=a.substring(3,a.indexOf(")"));
alert(a);}
else{alert('No');}
}
</script>
<body>
<form id="form1" name="form1" method="post" action="">
<label>
<input type="text" name="num" id="num" />
</label>
<label>
<input type="button" name="Submit" onclick="check()" value="提交" />
</label>
</form>
</body>
</html>
String str1 ="人数(053)xxx(1234)";
String str2 = "人数(53)xxx(1234)";
String reg = "^人数\\([1-9]+\\d*\\).*$";
if(str1.matches(reg)){
System.out.println("字符串str1==>人数为:"+str1.substring(str1.indexOf("(")+1,str1.indexOf(")")));
}else{
System.out.println("字符串str1不符合规则!");
}
if(str2.matches(reg)){
System.out.println("字符串str2==>人数为:"+str2.substring(str2.indexOf("(")+1,str2.indexOf(")")));
}else{
System.out.println("字符串str2不符合规则!");
}