<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[Java伴侣 - Java&Jsp]]></title>
<link>http://www.javamilk.org/</link>
<description><![CDATA[关于工作、学习与生活]]></description>
<language>zh-cn</language>
<copyright><![CDATA[Copyright 2005 PBlog3 v2.8]]></copyright>
<webMaster><![CDATA[blurxx@yahoo.cn(Blur)]]></webMaster>
<generator>PBlog2 v2.4</generator> 
<image>
	<title>Java伴侣</title>
	<url>http://www.javamilk.org/images/logos.gif</url>
	<link>http://www.javamilk.org/</link>
	<description>Java伴侣</description>
</image>

			<item>
			<link>http://www.javamilk.org/article.asp?id=1452</link>
			<title><![CDATA[list,set,map,数组间的相互转换 ]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Wed,27 Oct 2010 13:53:12 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1452</guid>
		<description><![CDATA[1.list转set<br/><br/>Java代码&nbsp;&nbsp;<br/>Set set =&nbsp;&nbsp;new&nbsp;&nbsp;HashSet( new&nbsp;&nbsp;ArrayList());&nbsp;&nbsp;&nbsp;&nbsp; <br/>Java代码&nbsp;&nbsp;<br/>Set set =&nbsp;&nbsp;new&nbsp;&nbsp;HashSet( new&nbsp;&nbsp;ArrayList());&nbsp;&nbsp;&nbsp;&nbsp; <br/>Set set = new HashSet(new ArrayList());&nbsp;&nbsp;<br/>2.set转list<br/><br/>Java代码&nbsp;&nbsp;<br/>List list =&nbsp;&nbsp;new&nbsp;&nbsp;ArrayList( new&nbsp;&nbsp;HashSet());&nbsp;&nbsp;&nbsp;&nbsp; <br/>Java代码&nbsp;&nbsp;<br/>List list =&nbsp;&nbsp;new&nbsp;&nbsp;ArrayList( new&nbsp;&nbsp;HashSet());&nbsp;&nbsp;&nbsp;&nbsp; <br/>List list = new ArrayList(new HashSet());&nbsp;&nbsp;<br/>3.数组转为list<br/><br/>Java代码&nbsp;&nbsp;<br/>List stooges = Arrays.asList( &#34;Larry&#34; ,&nbsp;&nbsp;&#34;Moe&#34; ,&nbsp;&nbsp;&#34;Curly&#34; );&nbsp;&nbsp;&nbsp;&nbsp; <br/>Java代码&nbsp;&nbsp;<br/>List stooges = Arrays.asList( &#34;Larry&#34; ,&nbsp;&nbsp;&#34;Moe&#34; ,&nbsp;&nbsp;&#34;Curly&#34; );&nbsp;&nbsp;&nbsp;&nbsp; <br/>List stooges = Arrays.asList(&#34;Larry&#34;, &#34;Moe&#34;, &#34;Curly&#34;);&nbsp;&nbsp;<br/>此时stooges中有有三个元素。 <br/>4.数组转为set <br/>int[] a = { 1, 2, 3 };&nbsp;&nbsp;<br/><br/>Java代码&nbsp;&nbsp;<br/>Set set =&nbsp;&nbsp;new&nbsp;&nbsp;HashSet(Arrays.asList(a));&nbsp;&nbsp;&nbsp;&nbsp; <br/>Java代码&nbsp;&nbsp;<br/>Set set =&nbsp;&nbsp;new&nbsp;&nbsp;HashSet(Arrays.asList(a));&nbsp;&nbsp;&nbsp;&nbsp; <br/>Set set = new HashSet(Arrays.asList(a));&nbsp;&nbsp;<br/>5.map的相关操作。<br/><br/>Java代码&nbsp;&nbsp;<br/>Map map =&nbsp;&nbsp;new&nbsp;&nbsp;HashMap();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>map.put( &#34;1&#34; ,&nbsp;&nbsp;&#34;a&#34; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>map.put( &#39;2&#39; ,&nbsp;&nbsp;&#39;b&#39; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>map.put( &#39;3&#39; ,&nbsp;&nbsp;&#39;c&#39; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(map);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 输出所有的值&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(map.keySet());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 输出所有的键&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(map.values());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 将map的值转化为List&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>List list =&nbsp;&nbsp;new&nbsp;&nbsp;ArrayList(map.values());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(list);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 将map的值转化为Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>Set set =&nbsp;&nbsp;new&nbsp;&nbsp;HashSet(map.values());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(set);&nbsp;&nbsp;&nbsp;&nbsp; <br/>Java代码&nbsp;&nbsp;<br/>Map map =&nbsp;&nbsp;new&nbsp;&nbsp;HashMap();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>map.put( &#34;1&#34; ,&nbsp;&nbsp;&#34;a&#34; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>map.put( &#39;2&#39; ,&nbsp;&nbsp;&#39;b&#39; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>map.put( &#39;3&#39; ,&nbsp;&nbsp;&#39;c&#39; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(map);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 输出所有的值&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(map.keySet());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 输出所有的键&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(map.values());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 将map的值转化为List&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>List list =&nbsp;&nbsp;new&nbsp;&nbsp;ArrayList(map.values());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(list);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>// 将map的值转化为Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>Set set =&nbsp;&nbsp;new&nbsp;&nbsp;HashSet(map.values());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(set);&nbsp;&nbsp;&nbsp;&nbsp; <br/>Map map = new HashMap();&nbsp;&nbsp; <br/>map.put(&#34;1&#34;, &#34;a&#34;);&nbsp;&nbsp; <br/>map.put(&#39;2&#39;, &#39;b&#39;);&nbsp;&nbsp; <br/>map.put(&#39;3&#39;, &#39;c&#39;);&nbsp;&nbsp; <br/>System.out.println(map);&nbsp;&nbsp; <br/>// 输出所有的值&nbsp;&nbsp; <br/>System.out.println(map.keySet());&nbsp;&nbsp; <br/>// 输出所有的键&nbsp;&nbsp; <br/>System.out.println(map.values());&nbsp;&nbsp; <br/>// 将map的值转化为List&nbsp;&nbsp; <br/>List list = new ArrayList(map.values());&nbsp;&nbsp; <br/>System.out.println(list);&nbsp;&nbsp; <br/>// 将map的值转化为Set&nbsp;&nbsp; <br/>Set set = new HashSet(map.values());&nbsp;&nbsp; <br/>System.out.println(set);&nbsp;&nbsp;<br/>6.list转数组<br/><br/>Java代码&nbsp;&nbsp;<br/>List list = Arrays.asList( &#34;a&#34; , &#34;b&#34; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(list);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>String[] arr = (String[])list.toArray( new&nbsp;&nbsp;String[list.size()]);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(Arrays.toString(arr));&nbsp;&nbsp;&nbsp;&nbsp; <br/>Java代码&nbsp;&nbsp;<br/>List list = Arrays.asList( &#34;a&#34; , &#34;b&#34; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(list);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>String[] arr = (String[])list.toArray( new&nbsp;&nbsp;String[list.size()]);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>System.out.println(Arrays.toString(arr));&nbsp;&nbsp;&nbsp;&nbsp;<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1448</link>
			<title><![CDATA[DEDE如何备份数据换空间]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Fri,22 Oct 2010 16:10:35 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1448</guid>
		<description><![CDATA[简单祥细备份DEDE数据换空间教程，教大家如何备份dedecms搬家<br/>　　<br/>1、首先在旧站后台备份数据库。<br/><br/>2、上旧站FTP下载四个文件夹：①images文件夹<br/>②data文件夹下面的backupdata文件（只下载backupdata文件夹就行了，这是数据库备份），<br/>③uploads文件夹（存放图片、附件之类的），<br/>④templets文件夹（旧站模版，如果不想要可以不要）<br/><br/>3、在新站安装与旧站一样版本的dede，网站后台密码还有数据库密码与旧站一样<br/><br/>4、上传下载好的旧站四个文件替换新旧的四个文件夹<br/><br/>5、到新站后台数据库还原<br/><br/>6、更新下网站内容就OK了。<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1392</link>
			<title><![CDATA[Java过滤标点符号]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Fri,12 Mar 2010 09:34:59 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1392</guid>
		<description><![CDATA[<div class="UBBPanel codePanel"><div class="UBBTitle"><a onClick="copycode(code12292);" style="float:right;cursor: pointer;font-weight: normal; font-style: normal">复制内容到剪贴板</a><img src="http://www.javamilk.org/images/code.gif" style="margin:0px 2px -3px 0px;" alt="程序代码"/> 程序代码</div><div class="UBBContent" id=code12292>package com.yy.test;<br/><br/>import java.util.regex.Matcher;<br/>import java.util.regex.Pattern;<br/><br/>public class StringUtil {<br/><br/>public&nbsp;&nbsp; static&nbsp;&nbsp; void&nbsp;&nbsp; testReg(){&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //先去掉标点,再合并空格&nbsp;&nbsp; <br/>&nbsp;&nbsp; Pattern&nbsp;&nbsp; p=Pattern.compile(&#34;[(.|,|\&#34;|\\?|!|:;&#39;)]&#34;);//这边增加所有的符号,例如要加一个&#39;则变成[(.|,|\&#34;|\\?|!|:|&#39;)],如果是特殊符号要加转换&nbsp;&nbsp; \&nbsp;&nbsp; <br/>&nbsp;&nbsp; Matcher&nbsp;&nbsp; m=p.matcher(&#34;我)(是&#39;你大;哥&#34;);//这为要整理的字符串&nbsp;&nbsp; <br/>&nbsp;&nbsp; String&nbsp;&nbsp; first=m.replaceAll(&#34;&#34;);&nbsp;&nbsp; <br/>&nbsp;&nbsp; System.out.println(first+&#34;*******&#34;);&nbsp;&nbsp; <br/>&nbsp;&nbsp; p=Pattern.compile(&#34;&nbsp;&nbsp; {2,}&#34;);&nbsp;&nbsp; <br/>&nbsp;&nbsp; m=p.matcher(first);&nbsp;&nbsp; <br/>&nbsp;&nbsp; String&nbsp;&nbsp; second=m.replaceAll(&#34;&#34;);&nbsp;&nbsp; <br/>&nbsp;&nbsp; System.out.println(second);//second就是你要的字符串了&nbsp;&nbsp;<br/><br/>}&nbsp;&nbsp;<br/><br/>/**<br/>* @param args<br/>*/<br/>public static void main(String[] args) {<br/>&nbsp;&nbsp; // TODO Auto-generated method stub<br/>&nbsp;&nbsp; testReg();<br/><br/>}<br/><br/>}</div></div>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1391</link>
			<title><![CDATA[Java常用正则表达式（2）]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Thu,11 Mar 2010 16:38:35 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1391</guid>
		<description><![CDATA[java常用正则表达式 <br/>只能输入数字：&#34;^[0-9]*$&#34;。 <br/>只能输入n位的数字：&#34;^\d{n}$&#34;。 <br/>只能输入至少n位的数字：&#34;^\d{n,}$&#34;。 <br/>只能输入m~n位的数字：。&#34;^\d{m,n}$&#34; <br/>只能输入零和非零开头的数字：&#34;^0|[1-9][0-9]*$&#34;。 <br/>只能输入有两位小数的正实数：&#34;^[0-9]+(\.[0-9]{2})?$&#34;。 <br/>只能输入有1~3位小数的正实数：&#34;^[0-9]+(\.[0-9]{1,3})?$&#34;。 <br/>只能输入非零的正整数：&#34;^\+?[1-9][0-9]*$&#34;。 <br/>只能输入非零的负整数：&#34;^\-[1-9][0-9]*$&#34;。 <br/>只能输入长度为3的字符：&#34;^.{3}$&#34;。 <br/>只能输入由26个英文字母组成的字符串：&#34;^[A-Za-z]+$&#34;。 <br/>只能输入由26个大写英文字母组成的字符串：&#34;^[A-Z]+$&#34;。 <br/>只能输入由26个小写英文字母组成的字符串：&#34;^[a-z]+$&#34;。 <br/>只能输入由数字和26个英文字母组成的字符串：&#34;^[A-Za-z0-9]+$&#34;。 <br/>只能输入由数字、26个英文字母或者下划线组成的字符串：&#34;^\w+$&#34;。 <br/>验证用户密码：&#34;^[a-zA-Z]\w{5,17}$&#34;正确格式为：以字母开头，长度在6~18之间，只能包含字符、数字和下划线。 <br/>验证是否含有^%&amp;&#39;,;=?$\&#34;等字符：&#34;[^%&amp;&#39;,;=?$\x22]+&#34;。 <br/>只能输入汉字：&#34;^[\u4e00-\u9fa5]{0,}$&#34; <br/>验证Email地址：&#34;^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$&#34;。 <br/>验证InternetURL：&#34;^<a href="http://" target="_blank" rel="external">http://</a>([\w-]+\.)+[\w-]+(/[\w-./?%&amp;=]*)?$&#34;。 <br/>验证电话号码：&#34;^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$&#34;正确格式为：&#34;XXX-XXXXXXX&#34;、&#34;XXXX-XXXXXXXX&#34;、&#34;XXX-XXXXXXX&#34;、&#34;XXX-XXXXXXXX&#34;、&#34;XXXXXXX&#34;和&#34;XXXXXXXX&#34;。 <br/>验证身份证号（15位或18位数字）：&#34;^\d{15}|\d{18}$&#34;。 <br/>验证一年的12个月：&#34;^(0?[1-9]|1[0-2])$&#34;正确格式为：&#34;01&#34;～&#34;09&#34;和&#34;1&#34;～&#34;12&#34;。 <br/>验证一个月的31天：&#34;^((0?[1-9])|((1|2)[0-9])|30|31)$&#34;正确格式为；&#34;01&#34;～&#34;09&#34;和&#34;1&#34;～&#34;31&#34;。 <br/><br/>匹配中文字符的正则表达式： <br/>String.prototype.len=function(){return <br/><br/>this.replace(/[^\x00-\xff]/g,&#34;aa&#34;).length;} <br/><br/>匹配空行的正则表达式：\n[\s| ]*\r <br/><br/>匹配html标签的正则表达式：&lt;(.*)&gt;(.*)&lt;\/(.*)&gt;|&lt;(.*)\/&gt; <br/><br/>匹配首尾空格的正则表达式：(^\s*)|(\s*$) <br/><br/>应用：javascript中没有像vbscript那样的trim函数，我们就可以利用这个表达式来实现，如下： <br/><br/>String.prototype.trim = function() <br/>{ <br/>return this.replace(/(^\s*)|(\s*$)/g, &#34;&#34;); <br/>} <br/><br/>利用正则表达式分解和转换IP地址： <br/><br/>下面是利用正则表达式匹配IP地址，并将IP地址转换成对应数值的Javascript程序： <br/><br/>function IP2V(ip) <br/><br/>{ <br/>re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式 <br/>if(re.test(ip)) <br/>{ <br/>return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1 <br/>} <br/>else <br/>{ <br/>throw new Error(&#34;Not a valid IP address!&#34;) <br/>} <br/>} <br/><br/>不过上面的程序如果不用正则表达式，而直接用split函数来分解可能更简单，程序如下： <br/><br/>var ip=&#34;10.100.20.168&#34; <br/>ip=ip.split(&#34;.&#34;) <br/>alert(&#34;IP值是：&#34;+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1)) <br/><br/><br/>匹配Email地址的正则表达式：\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* <br/><br/>匹配网址URL的正则表达式：<a href="http://" target="_blank" rel="external">http://</a>([\w-]+\.)+[\w-]+(/[\w- ./?%&amp;=]*)? <br/>正则表达式从URL地址中提取文件名的javascript程序，如下 <br/>结果为page1 <br/><br/>s=&#34;<a href="http://www.9499.net/page1.htm" target="_blank" rel="external">http://www.9499.net/page1.htm</a>&#34; <br/>s=s.replace(/(.*\/){0,}([^\.]+).*/ig,&#34;$2&#34;) <br/>alert(s) <br/><br/>利用正则表达式限制网页表单里的文本框输入内容： <br/><br/>用正则表达式限制只能输入中文：onkeyup=&#34;value=value.replace(/[^\u4E00-\u9FA5]/g,&#39;&#39;)&#34; text&#39;,clipboardData.getData(&#39;text&#39;).replace(/[^\u4E00-\u9FA5]/g,&#39;&#39;))&#34; <br/><br/>用正则表达式限制只能输入全角字符： &#39;)&#34; text&#39;,clipboardData.getData(&#39;text&#39;).replace(/[^\uFF00-\uFFFF]/g,&#39;&#39;))&#34; <br/><br/>用正则表达式限制只能输入数字：onkeyup=&#34;value=value.replace(/[^\d]/g,&#39;&#39;) &#34;text&#39;,clipboardData.getData(&#39;text&#39;).replace(/[^\d]/g,&#39;&#39;))&#34; <br/><br/>用正则表达式限制只能输入数字和英文：onkeyup=&#34;value=value.replace(/[\W]/g,&#39;&#39;) &#34;text&#39;,clipboardData.getData(&#39;text&#39;).replace(/[^\d]/g,&#39;&#39;))&#34; <br/>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1390</link>
			<title><![CDATA[java常用正则表达式]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Thu,11 Mar 2010 16:37:14 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1390</guid>
		<description><![CDATA[import&nbsp;&nbsp;java.util.regex.Matcher;&nbsp;&nbsp; <br/>import&nbsp;&nbsp;java.util.regex.Pattern;&nbsp;&nbsp; <br/>&nbsp;&nbsp; <br/>/**&nbsp;&nbsp; <br/> * @author&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Der&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/> * @date&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2006-10-23&nbsp;&nbsp; <br/> * @packeage_name regex&nbsp;&nbsp; <br/> *&nbsp;&nbsp;&nbsp;&nbsp;<br/> */&nbsp;&nbsp;&nbsp;&nbsp;<br/>public&nbsp;&nbsp; class&nbsp;&nbsp;RegexChk&nbsp;&nbsp; <br/>{&nbsp;&nbsp; <br/>&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp;&nbsp;&nbsp;boolean&nbsp;&nbsp;startCheck(String reg,String string)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boolean&nbsp;&nbsp;tem= false ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pattern pattern = Pattern.compile(reg);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Matcher matcher=pattern.matcher(string);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tem=matcher.matches();&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;tem;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检验整数,适用于正整数、负整数、0，负整数不能以-0开头,&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* 正整数不能以0开头&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkNr(String nr)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String reg=&#34;^(-?)[1-9]+\\d*|0&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(reg,nr);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 手机号码验证,11位，不知道详细的手机号码段，只是验证开头必须是1和位数&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkCellPhone(String cellPhoneNr)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String reg=&#34;^[1][\\d]{10}&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(reg,cellPhoneNr);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检验空白符&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkWhiteLine(String line)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;(\\s|\\t|\\r)+&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,line);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检查EMAIL地址&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 用户名和网站名称必须&gt;=1位字符&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 地址结尾必须是以com|cn|com|cn|net|org|gov|gov.cn|edu|edu.cn结尾&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkEmailWithSuffix(String email)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;\\w+\\@\\w+\\.(com|cn|com.cn|net|org|gov|gov.cn|edu|edu.cn)&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,email);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检查EMAIL地址&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 用户名和网站名称必须&gt;=1位字符&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 地址结尾必须是2位以上，如：cn,test,com,info&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkEmail(String email)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;\\w+\\@\\w+\\.\\w{2,}&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,email);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检查邮政编码(中国),6位，第一位必须是非0开头，其他5位数字为0-9&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkPostcode(String postCode)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;^[1-9]\\d{5}&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,postCode);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检验用户名&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 取值范围为a-z,A-Z,0-9,&#34;_&#34;,汉字，不能以&#34;_&#34;结尾&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 用户名有最小长度和最大长度限制，比如用户名必须是4-20位&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkUsername(String username, int&nbsp;&nbsp;min, int&nbsp;&nbsp;max)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;[\\w\u4e00-\u9fa5]{&#34; +min+ &#34;,&#34; +max+ &#34;}(?&lt;!_)&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,username);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检验用户名&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 取值范围为a-z,A-Z,0-9,&#34;_&#34;,汉字，不能以&#34;_&#34;结尾&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 有最小位数限制的用户名，比如：用户名最少为4位字符&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkUsername(String username, int&nbsp;&nbsp;min)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//[\\w\u4e00-\u9fa5]{2,}?&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;[\\w\u4e00-\u9fa5]{&#34; +min+ &#34;,}(?&lt;!_)&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,username);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 检验用户名&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 取值范围为a-z,A-Z,0-9,&#34;_&#34;,汉字&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 最少一位字符，最大字符位数无限制，不能以&#34;_&#34;结尾&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkUsername(String username)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;[\\w\u4e00-\u9fa5]+(?&lt;!_)&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,username);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;查看IP地址是否合法&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkIP(String ipAddress)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.&#34;&nbsp;&nbsp;+&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#34;(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.&#34;&nbsp;&nbsp;+&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#34;(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.&#34;&nbsp;&nbsp;+&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#34;(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,ipAddress);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 验证国内电话号码&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 格式：010-67676767，区号长度3-4位，必须以&#34;0&#34;开头，号码是7-8位&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkPhoneNr(String phoneNr)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String regex=&#34;^[0]\\d{2,3}\\-\\d{7,8}&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(regex,phoneNr);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 验证国内电话号码&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 格式：6767676, 号码位数必须是7-8位,头一位不能是&#34;0&#34;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkPhoneNrWithoutCode(String phoneNr)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String reg=&#34;^[1-9]\\d{6,7}&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(reg,phoneNr);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 验证国内电话号码&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 格式：0106767676，共11位或者12位，必须是0开头&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkPhoneNrWithoutLine(String phoneNr)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String reg=&#34;^[0]\\d{10,11}&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(reg,phoneNr);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 验证国内身份证号码：15或18位，由数字组成，不能以0开头&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkIdCard(String idNr)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String reg=&#34;^[1-9](\\d{14}|\\d{17})&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(reg,idNr);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 网址验证&lt;br&gt;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * 符合类型：&lt;br&gt;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://www.test.com" target="_blank" rel="external">http://www.test.com</a>&lt;br&gt;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://163.com" target="_blank" rel="external">http://163.com</a>&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; * */&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp; boolean&nbsp;&nbsp;checkWebSite(String url)&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//<a href="http://www.163.com" target="_blank" rel="external">http://www.163.com</a>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String reg=&#34;^(http)\\://(\\w+\\.\\w+\\.\\w+|\\w+\\.\\w+)&#34; ;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&nbsp;startCheck(reg,url);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; <br/>}&nbsp;&nbsp;<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1364</link>
			<title><![CDATA[使用WordExtractor读取doc文件时报错]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Fri,26 Feb 2010 13:27:44 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1364</guid>
		<description><![CDATA[<div class="UBBPanel codePanel"><div class="UBBTitle"><a onClick="copycode(code7824);" style="float:right;cursor: pointer;font-weight: normal; font-style: normal">复制内容到剪贴板</a><img src="http://www.javamilk.org/images/code.gif" style="margin:0px 2px -3px 0px;" alt="程序代码"/> 程序代码</div><div class="UBBContent" id=code7824>java.util.NoSuchElementException<br/>&#160;&#160;&#160;&#160;at java.util.AbstractList$Itr.next(Unknown Source)<br/>&#160;&#160;&#160;&#160;at o&#114;g.textmining.text.extraction.WordExtractor.extractText(WordExtractor.java:150)<br/>&#160;&#160;&#160;&#160;at com.robot.util.doc.DocReader.readDoc(DocReader.java:17)<br/>&#160;&#160;&#160;&#160;at com.robot.util.doc.DocReader.main(DocReader.java:28)</div></div><br/><br/>解决办法：<br/>&nbsp;&nbsp; 打开word文件，把最后一行的回行去掉，保存即可]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1357</link>
			<title><![CDATA[百度贴吧图片跳转（JSP版）]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Thu,04 Feb 2010 10:31:21 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1357</guid>
		<description><![CDATA[ &lt;%<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(request.getHeader(&#34;&#34;)!=null&amp;&amp;request.getHeader(&#34;&#34;).indexOf(&#34;baidu&#34;)!=-1){<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;String url = &#34;<a href="http://baidu.com" target="_blank" rel="external">http://baidu.com</a>&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;response.sendRedirect(url);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;File myGifFile = new File(request.getRealPath(&#34;&#34;)+&#34;/logo.jpg&#34;);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;BufferedImage bufi = ImageIO.read(myGifFile);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;response.reset();&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;response.setContentType(&#34;image/jpeg&#34;);&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;ImageIO.write(bufi, &#34;jpeg&#34;, response.getOutputStream());&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;%&gt;]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1355</link>
			<title><![CDATA[为什么request.getHeader(&#34;Referer&#34;)=null]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Tue,02 Feb 2010 11:13:22 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1355</guid>
		<description><![CDATA[用JS调用 request.getHeader(&#34;Referer&#34;)，取值为空。理解如下：<br/><br/>我的来源页是一个flash文件，点击flash上的一个链接跳到下一页，在该页获取来源页地址request.getHeader(&#34;Referer&#34;)，却为空值，这是怎么回事？？！！ <br/><br/>===============<br/>getHeader(&#34;Referer&#34;)要走http协议时才有值，也就是说要通过&lt;a href=&#34;url&#34;&gt;sss&lt;/a&gt;标记才能获得那个值&nbsp;&nbsp; <br/>而通过改变location或是&lt;a href=&#34;javascript:location=&#39;url&#39;&#34;&gt;sss&lt;/a&gt;都是得不到那个值得。<br/><br/><br/>request.getHeader(&#34;Referer&#34;)返回的是一个Enumeration 玫举 <br/><br/><div class="UBBPanel codePanel"><div class="UBBTitle"><a onClick="copycode(code73107);" style="float:right;cursor: pointer;font-weight: normal; font-style: normal">复制内容到剪贴板</a><img src="http://www.javamilk.org/images/code.gif" style="margin:0px 2px -3px 0px;" alt="程序代码"/> 程序代码</div><div class="UBBContent" id=code73107>Enumeration e =request.getHeaders(&#34;Referer&#34;); <br/>String a; <br/>if(e.hasMoreElements()){ <br/>a=(String)e.nextElement(); <br/>}else{ <br/>a=&#34;直接访问&#34;; <br/>}</div></div><br/><br/><br/>使用request.getHeaders(&#34;Referer&#34;)返回的Enumeration 玫举本身就只有一个元素，也就是request.getHeader(&#34;Referer&#34;)地返回值 <br/><br/>一样的 <br/>当在a.jsp是通过某个按钮的 onclick=&#34;location=&#39;b.jsp&#39;&#34; <br/>进入b.jsp的，在b.jsp中也是得不到来源页a.jsp的地址<br/><br/><a href="http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=121" target="_blank" rel="external">http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=121</a>&amp;threadID=35595&amp;messageID=209688<br/><br/>以前有这样一个帖子&nbsp;&nbsp; 目的 是如何获取 上一级页面的地址<br/><br/>OK，如果发送页面以POST方式提交 <br/>这个request.getHeader(&#34;referer&#34;)&nbsp;&nbsp; 完全没有问题<br/>但是如果如果发送页面以get方式提交 ,或许还带有参数 <br/>request.getHeader(&#34;referer&#34;) 会返回空值&nbsp;&nbsp; 如何解决呢？<br/><br/>====================<br/><br/>说下我的具体情况吧<br/>比如在每个JSP页面 都包含<br/>&lt;%@page errorPage=&#34;../error.jsp&#34; %&gt;<br/>如果出现任何问题 都会跳到error.jsp页面<br/>error.jsp 有一个back的按钮 要求实现返回上一级页面 <br/><br/>其实利用history.back() 就可以实现 ，但是由于代理服务器原因 去掉了缓存的原因&nbsp;&nbsp; 所以需要另一种方式来实现此功能<br/><br/>大家有什么好的方法和建议吗？？谢谢<br/><br/>===========================<br/><br/>把地址保存到request或session里面去。<br/><br/>你根本没有理解&lt;%@page errorPage=&#34;../error.jsp&#34; %&gt;<br/>的真正意义,否则不可能会问出这种问题<br/><br/>=====================<br/><br/>不好意思&nbsp;&nbsp; get 用request.getHeader&nbsp;&nbsp; 是没问题的<br/>document.location=&#34;xx.jsp&#34;&nbsp;&nbsp; 这样才有问题<br/><br/>======================<br/><br/>那楼上请教一下该如何理解呢&nbsp;&nbsp; ~&nbsp;&nbsp; 说实话 我只知道errorpage 就是相当于一个大的catch&nbsp;&nbsp;<br/><br/>但需求要求在这个页面 有一个返回上一级页面的功能<br/><br/>OK，如果发送页面以POST方式提交 <br/>这个request.getHeader(&#34;referer&#34;)&nbsp;&nbsp; 完全没有问题<br/>但是如果如果发送页面以get方式提交 ,或许还带有参数 <br/>request.getHeader(&#34;referer&#34;) 会返回空值&nbsp;&nbsp; 如何解决呢？<br/><br/>===================<br/>我用get方式提交怎么不会返回空值啊?<br/><br/>=====================<br/><br/>referer是浏览器在用户提交请求当前页面中的一个链接时,将当前页面的URL放在头域中提交给服务端的,如当前页面为a.html,它里面有一个b.html的链接,当用户要访问b.html时浏览器就会把a.html作为referer发给服务端.<br/><br/>errorpage 根本不是用户去访问的,绝对大多数errorPage是forwaord,由服务端直接调用http连接访问errorpage将结果发给用户.用户根本没有访问errorPage.<br/><br/>对于location=&#34;aaa.jsp&#34;这样用js访问没有referer,是因为当执行location=&#34;aaa.jsp&#34;时,当前页面的URL已经是aaa.jsp,真的要取上一级当然可以从history中取到发给服务端,但那已经不是Referer的本意了.可以以如下代码来代替:<br/>function jump(url){<br/>&nbsp;&nbsp;&nbsp;&nbsp; var e = document.cr&#101;ateElement(&#34;a&#34;);<br/>&nbsp;&nbsp;&nbsp;&nbsp; e.href = url;<br/>&nbsp;&nbsp;&nbsp;&nbsp; document.body.appendChild(e);<br/>&nbsp;&nbsp;&nbsp;&nbsp; e.click();<br/>}<br/><br/>然后你调用:<br/>jump(&#34;<a href="http://host/aaa.jsp" target="_blank" rel="external">http://host/aaa.jsp</a>&#34;);看看肯定能取到.<br/><br/>====================<br/><br/>昨天急 我把location 全部用form提交的方式实现了 <br/><br/>谢谢！ 这个方法不错 生成一个 连接再掉 click 。肯定没问题 <br/>thankyou~<br/><br/>============================<br/><br/>referer的意图是判断访问来源，比如你想知道用户是通过google还是baidu找到你的页面的，就可以判断referer<br/><br/>很多下载站点也用它防止盗链，所以flash get之类的软件会自动把当前页作为referer字段发给下载地址以伪装成站内点击<br/><br/>不知道 wondersimon 是否已经解决他自己的那个问题,时隔这么久我今天也遇到此问题但不知道解决,因为我在用request.getHeader(&#34;Referer&#34;)时获取到的竟然是我自己页面上的域,而不是上级页面的域名,说明:上级页面(既主调页面)是别人服务器上的某个页面,在他的页面中只加载一段href链接,当有客户点击这个链接时就跳转到我服务器上的某个页面,而些我的数据库竟然获取到的结果是我自己服务器上那个页面的域(既我自己的域名),再请问我这是怎么回事,该如何是好,(补:看书上说明request.getHeader(&#34;Referer&#34;)理论上是可以获取上级域名的,但我现在实在是晕了)<br/> <br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1354</link>
			<title><![CDATA[用java过滤特殊标点字符]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Mon,01 Feb 2010 10:32:11 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1354</guid>
		<description><![CDATA[<div class="UBBPanel codePanel"><div class="UBBTitle"><a onClick="copycode(code30527);" style="float:right;cursor: pointer;font-weight: normal; font-style: normal">复制内容到剪贴板</a><img src="http://www.javamilk.org/images/code.gif" style="margin:0px 2px -3px 0px;" alt="程序代码"/> 程序代码</div><div class="UBBContent" id=code30527>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Pattern p = Pattern.compile(&#34;[(.|,|\&#34;|\\?|!|\\-|:;&#39;)]&#34;);// 这边增加所有的符号,例如要加一个&#39;则变成[(.|,|\&#34;|\\?|!|:|&#39;)],如果是特殊符号要加转换<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;// \<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Matcher m = p.matcher(&#34;我)(是&#39;你-大;哥&#34;);// 这为要整理的字符串<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;String first = m.replaceAll(&#34;&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;System.out.println(first);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;p = Pattern.compile(&#34;&nbsp;&nbsp; {2,}&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;m = p.matcher(first);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;String second = m.replaceAll(&#34;&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;System.out.println(second);// second就是你要的字符串了</div></div>]]></description>
		</item>
		
			<item>
			<link>http://www.javamilk.org/article.asp?id=1285</link>
			<title><![CDATA[java 验证邮箱格式正确性]]></title>
			<author>blurxx@yahoo.cn(Java伴侣)</author>
			<category><![CDATA[Java&amp;Jsp]]></category>
			<pubDate>Wed,28 Oct 2009 09:37:48 +0800</pubDate>
			<guid>http://www.javamilk.org/default.asp?id=1285</guid>
		<description><![CDATA[<div class="UBBPanel codePanel"><div class="UBBTitle"><a onClick="copycode(code64043);" style="float:right;cursor: pointer;font-weight: normal; font-style: normal">复制内容到剪贴板</a><img src="http://www.javamilk.org/images/code.gif" style="margin:0px 2px -3px 0px;" alt="程序代码"/> 程序代码</div><div class="UBBContent" id=code64043>public class RegisterCheck {<br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp; * 验证输入的邮箱格式是否符合<br/>&nbsp;&nbsp;&nbsp;&nbsp; * @param email<br/>&nbsp;&nbsp;&nbsp;&nbsp; * @return 是否合法<br/>&nbsp;&nbsp;&nbsp;&nbsp; */<br/>public static boolean emailFormat(String email)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boolean tag = true;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;final String pattern1 = &#34;^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;final Pattern pattern = Pattern.compile(pattern1);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;final Matcher mat = pattern.matcher(email);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (!mat.find()) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tag = false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return tag;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>}</div></div>]]></description>
		</item>
		
</channel>
</rss>
