JavaBean实例11:检查字符串中是否包含英文

当我们有时候需要判断一段话中是否包含英文的时候。

我们可以先通过String类中的:
1.**toCharArray();**方法将指定字符串转换为字符数组。
2.然后将数组中的字符强制转换为ASCII码。
3.最后通过ASCII码的大小进行循环判断实现此功能。

实例代码如下:

1.JavaBean文件:
StringUtil.java

package exa139;

public class StringUtil {
	private String str;		//要判断的字符串
	private boolean hasEn;	//是否包含英文字符
	private String cnStr;	//去掉英文字母后的字符串
	public String getCnStr() {
		return cnStr;
	}
	public void setCnStr(String cnStr) {
		this.cnStr = cnStr;
	}
	public String getStr() {
		return str;
	}
	public void setStr(String str) {
		this.str = str;
	}
	public boolean isHasEn() {
		char cArr[] = str.toCharArray();//将字符串转换为字符数组
		StringBuffer sb =new StringBuffer("");
		StringBuffer sb2 =new StringBuffer("");
		for(int i=0;i<cArr.length;i++){
			//调用String类的hashCode()方法也能获得字符的ASCII码
			//int ascii = String.valueOf(cArr[i]).hashCode();
			int ascii = (int)cArr[i];//强制转换可以直接得到字符的ASCII码
			//英文字符的 ASCII码范围,大写字母A-Z的范围65-90,小写字母a-z的范围97-122
			if((ascii>=65&&ascii<=90)||(ascii>=97&&ascii<=122)){
				sb.append(cArr[i]);//将每个英文字母添加到StringBuffer对象中
			}
			else{
				sb2.append(cArr[i]);
			}
		}
		
		this.setCnStr(sb2.toString());
		if(!sb.toString().equals(""))//如果保存英文字母的字符串不为"",说明该字符串包含英文字母
			hasEn=true;
		else
			hasEn=false;
		return hasEn;
	}
	public void setHasEn(boolean hasEn) {
		this.hasEn = hasEn;
	}
}

2.JSP文件
index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</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 colspan="2" align="center"><input type="submit" value="检  查" /></td>
     	</tr>
     </table>	
     </form>
</body>
</html>

check.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
   		String str = request.getParameter("str");
  	 %>
  	 <!-- 使用useBean动作标签导入JavaBean对象 -->
  	<jsp:useBean id="strBean" class="exa139.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>

结果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员小牧之

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值