JSP——通过表单向自己提交一份通信费账单,然后计算出消费总额(分隔标记split的使用案例正则表达式数字序列及非数字序列的区别)

String类的String[]split(String regex)方法,该方法可以用参数regex指定的正则表达式作为分隔标记分解成当前字符串中的语言符号,例如可以使用正则表达式“[0123456789].+”匹配所有的数字序列,用“[^0123456789].+”匹配所有的非数字序列

1.index.jsp文件

<%@ page contentType="text/html;charset=utf-8" %>

<HTML>

<body >

   <form  action="" method=post name=form>

      <input type="text" name="message" size=50> 

      <input type="submit" value="确定" name="submit">

   </form> 

<%

request.setCharacterEncoding("utf-8");//在获取信息之前设置自己的编码

String message=request.getParameter("message");

double number=0;

if(message==null)

{

message="";

}

%>

<b>账单内容:<br><%=message%>

<br><br><font color=red>用非数字序列分隔</font><br>

<%

String []a=message.split("[^0123456789.]");

double sum=0;

for(String s:a)

{

try{

sum+=Double.parseDouble(s);

}

catch(NumberFormatException exp){}

}

for(int i=0;i<a.length;i++){out.println(a[i]+"  ");}

 %>

 <br>账单总消费:<%=sum %> <br>

 ------------------------------------------------------------------------------------

 <br><font color=red>用数字序列分隔</font><br>

<%

String []a2=message.split("[0123456789.]");

double sum2=0;

for(String s:a2)

{

try{

sum2+=Double.parseDouble(s);

}

catch(NumberFormatException exp){}

}

for(int i=0;i<a2.length;i++){out.println(a2[i]+" ");}

 %>

 <br>账单总消费:<%=sum2 %> </b>

  </body>

</html>

2.浏览器显示效果

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值