StringUtil.java
package com.lh.bean; public class StringUtil { // 要检查的字符串 private String str; // 是否包含英文字符 private boolean hasEn; public void setStr(String str) { this.str = str; } public String getStr() { return str; } public void setHasEn(boolean hasEn) { this.hasEn = hasEn; } public boolean isHasEn() { // 将字符串转换为字符数组 char cArr[] = str.toCharArray(); StringBuffer sb = new StringBuffer(""); StringBuffer sb2 = new StringBuffer(""); for (int i = 0; i < cArr.length; i++) { // 强制转换可以直接得到字符的ASCII码 int ascii = (int) cArr[i]; // 英文字符的ASCII码范围,大写字母A~Z的范围是65~90小写字母a~z的范围是97-122 if (ascii >= 65 && ascii <= 90 || ascii >= 97 && ascii <= 122) { // 将每个英文字母添加到StringBuffer对象中 sb.append(cArr[i]); } else { sb2.append(cArr[i]); } } // 如果保存英文字母的字符串不为“”,说明该字符串包含英文字母 if (!sb.toString().equals("")) hasEn = true; else hasEn = false; return hasEn; } }
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <html> <head> <title>My JSP 'index.jsp' starting page</title> </head> <body> <form action="check.jsp" method="post"> <table> <tr> <td align="right">请输入字符串:</td> <td><input type="text" name="str" size="30"> </td> </tr> <tr> <td colospan="2" align="center"><input type="submit" value="检查"> </td> </tr> </table> </form> </body> </html>
check.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <html> <head> <title>My JSP 'check.jsp' starting page</title> </head> <body> <% request.setCharacterEncoding("UTF-8"); String str = request.getParameter("str"); %> <!-- 使用jspUsebean动作标签导入JavaBean对象 --> <jsp:useBean id="strBean" class="com.lh.bean.StringUtil"></jsp:useBean> <!-- 对StringUtil类的Str属性赋值 --> <jsp:setProperty property="str" name="strBean" value="<%=str %>" /> <table> <tr> <td align="right">输入的字符串:</td> <td> <!-- 从StringUtil对象中获得Str的属性值 --> <jsp:getProperty property="str" name="strBean" /></td> </tr> <tr> <td align="right">是否包含英文字母:</td> <td> <!-- 从StringUtil对象中获得hasEn的属性值 --> <jsp:getProperty property="hasEn" name="strBean" /></td> </tr> <%-- <tr> <td align="right">去掉英文字母后的字符串:</td> <td> <!-- 从StringUtil对象中获得cnStr的属性值 --> <jsp:getProperty property="cnStr" name="strBean" /></td> </tr> --%> </table> </body> </html>
//判断字符串是否含有数字的方法: for(int i=0;i<cArr.length;i++){ //强制转换得到ASCII码的值 int ascii=(int)cArr[i]; //数字的ascii码范围在48~57之间 if(ascii>=48&&ascii<=57){ sbNum.append(cArr[i]); }else{ sbOhters.append(cArr[i]); } this.setOthersStr(sbOthers.toString()); if(!sbNum.toString().equals("")) hasNum=true; else hasNum=false; return hasNum; }