本实例实现的是再输入框输入一段包含空格和回车的内容。
提交表单后在信息页中的内容也会包含空格和回车。
关键方法:
public String replaceAll(String regex, String replacement)
参数
regex -- 匹配此字符串的正则表达式。
newChar -- 用来替换每个匹配项的字符串。
1.首先我们需要编写一个javabean类:
StringUtil.java:
package exa126;
//此类主要包含一个转换空格和换行符的方法
public class StringUtil {
private String str;
public void setStr(String str)
{
this.str=str;
}
public String getStr()
{
return replace(str);
}
/*替换方法
* 参数:str:目标字符串
* 其基本思想是先将str中的空格全部转换为 后赋给newStr1
* 然后将newStr1中的换行符全部转换为<br>后赋给newStr2
* 返回newStr2
*
* replaceAll(String a,String b);该方法用于将某个字符串中的某个子串(a)转换成指定字符串(b)
*/
public String replace(String str)
{
String newStr1="";
String newStr2="";
newStr1=str.replaceAll(" ", " ");
newStr2=newStr1.replaceAll("\r\n", "<br>");
return newStr2;
}
}
2.编写提交页:
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="replace.jsp" method="post">//表单提交到replace.jsp页面
<table>
<tr>
<td align="center">请输入信息</td>
</tr>
<tr>
<td>
<textarea row="5" cols="30" name="info"></textarea>
</td>
</tr>
<tr>
<td align="center">
<input type="submit" value="提 交"/>
</td>
</tr>
</table>
</form>
</body>
</html>
3.信息显示页:
replace.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 info=request.getParameter("info"); %>
<jsp:useBean id="strBean" class="exa126.StringUtil"></jsp:useBean>
<jsp:setProperty property="str" name="strBean" value="<%=info %>"/>
<table width="240">
<tr>
<td align="center">查看信息结果</td>
</tr>
<tr>
<td height="100" valign="top">
<jsp:getProperty property="str" name="strBean"/>//此标签会自动调用javabean中的get方法
</td>
</tr>
</table>
</body>
</html>
结果:
在编写本实例前我应用了Servlet编码过滤器,所以不会出现乱码。
详细内容请看上一篇博客。