⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stringutils.java

📁 一个不错的bbs论坛系统.对初学者很有帮助
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	        int strTail = str.indexOf("[/email]");
	        while((strHead!=-1) && (strTail!=-1)){
	            int strTailLength = strTail+8;
	            String temp = str.substring(strHead+7,strTail);
	           // String text = temp.substring(strHead+5,temp.length());
	            str = str.substring(0,strHead)+"<a href='mailto:"+temp+"'>"+temp+"</a>"+str.substring(strTailLength,str.length());
	            strHead = str.indexOf("[email]",strTailLength);
	            strTail = str.indexOf("[/email]",strTailLength);
	        }
	        return str;
	    }

	    //     [flash]转换为html
	    private static String replaceFLASH(String str){
	        int strHead = str.indexOf("[swf=");
	        int strTail = str.indexOf("[/swf]");
	        while((strHead!=-1) && (strTail!=-1)){
	            int strTailLength = strTail+6;
	            String temp = str.substring(strHead+5,strTail);
	            int strHeadRight = temp.indexOf("]");
	            String tempStr = temp.substring(0,strHeadRight);
	            int pos = temp.indexOf(",");
	            String width = tempStr.substring(0,pos);
	            String height = tempStr.substring(pos+1,strHeadRight);
	            //fontText
	            String text = temp.substring(strHeadRight+1,temp.length());
	            str = str.substring(0,strHead)+"<embed src='"+text+"' quality=\"high\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" width="+width+" height="+height+"></embed>"+str.substring(strTailLength,str.length());
	            strHead = str.indexOf("[swf=",strTailLength);
	            strTail = str.indexOf("[/swf]",strTailLength);
	        }
	        return str;
	    }

	    //	   [rm]转换为html
	    private static String replaceRM(String str){
	        int strHead = str.indexOf("[rm=");
	        int strTail = str.indexOf("[/rm]");
	        while((strHead!=-1) && (strTail!=-1)){
	            int strTailLength = strTail+5;
	            String temp = str.substring(strHead+4,strTail);
	            int strHeadRight = temp.indexOf("]");
	            String tempStr = temp.substring(0,strHeadRight);
	            int pos = temp.indexOf(",");
	            String width = tempStr.substring(0,pos);
	            String height = tempStr.substring(pos+1,strHeadRight);
	            String text = temp.substring(strHeadRight+1,temp.length());
	            str = str.substring(0,strHead)+"<OBJECT classid=CLSID:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA height="+height+" width="+width+" id=RVOCX name=rvstatus><param name='_ExtentX' value='8149'><param name='_ExtentY' value='794'><param name='AUTOSTART' value='1'><param name='SHUFFLE' value='0'><param name='PREFETCH' value='0'><param name='NOLABELS' value='0'><param name='SRC' value='"+text+"'><embed SRC='"+text+"' type='audio/x-pn-realaudio-plugin' width='315' height='59' controls='ControlPanel,StatusBar' console='cons' name='rvstatus'><param name='CONTROLS' value='Imagewindow,ControlPanel,StatusBar'><param name='CONSOLE' value='cons'><param name='LOOP' value='0'><param name='NUMLOOP' value='0'><param name='CENTER' value='0'><param name='MAINTAINASPECT' value='0'><param name='BACKGROUNDCOLOR' value='#000000'></embed></OBJECT>"+str.substring(strTailLength,str.length());
	            strHead = str.indexOf("[rm=",strTailLength);
	            strTail = str.indexOf("[/rm]",strTailLength);
	        }
	        return str;
	    }

	    //		[mp]转换为html
	    private static String replaceMP(String str){
	        int strHead = str.indexOf("[mp=");
	        int strTail = str.indexOf("[/mp]");
	        while((strHead!=-1) && (strTail!=-1)){
	            int strTailLength = strTail+5;
	            String temp = str.substring(strHead+4,strTail);
	            int strHeadRight = temp.indexOf("]");
	            String tempStr = temp.substring(0,strHeadRight);
	            int pos = temp.indexOf(",");
	            String width = tempStr.substring(0,pos);
	            String height = tempStr.substring(pos+1,strHeadRight);
	            String text = temp.substring(strHeadRight+1,temp.length());
	            String str1 = "<object classid='CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95' codebase='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701' height='"+height+"' id='nstv' style='left: 0px; top: 0px; border: 7px none rgb(192,192,192)' type='application/x-oleobject' width='"+width+"' standby='Loading Microsoft Windows Media Player components...'>";
	            String str2 = "<param name='AudioStream' value='-1'><param name='AutoSize' value='0'><param name='AutoStart' value='-1'><param name='AnimationAtStart' value='0'><param name='AllowScan' value='-1'><param name='AllowChangeDisplaySize' value='-1'><param name='AutoRewind' value='0'><param name='Balance' value='0'><param name='BufferingTime' value='5'><param name='ClickToPlay' value='-1'><param name='CursorType' value='0'><param name='CurrentPosition' value='-1'><param name='CurrentMarker' value='0'><param name='DisplayBackColor' value='0'><param name='DisplayForeColor' value='16777215'><param name='DisplayMode' value='0'><param name='DisplaySize' value='4'><param name='Enabled' value='-1'><param name='EnableContextMenu' value='0'><param name='EnablePositionControls' value='-1'><param name='EnableFullScreenControls' value='0'><param name='EnableTracker' value='-1'>";
	            String str3 = "<param name='Filename' value='"+text+"'><param name='InvokeURLs' value='-1'><param name='Language' value='-1'><param name='Mute' value='0'><param name='PlayCount' value='1'><param name='PreviewMode' value='0'><param name='Rate' value='1'><param name='SelectionStart' value='-1'><param name='SelectionEnd' value='-1'><param name='SendOpenStateChangeEvents' value='-1'><param name='SendWarningEvents' value='-1'><param name='SendErrorEvents' value='-1'><param name='SendKeyboardEvents' value='0'><param name='SendMouseClickEvents' value='0'><param name='SendMouseMoveEvents' value='0'><param name='SendPlayStateChangeEvents' value='-1'><param name='ShowCaptioning' value='0'><param name='ShowControls' value='1'><param name='ShowAudioControls' value='-1'><param name='ShowDisplay' value='0'>";
	            String str4 = "<param name='ShowGotoBar' value='0'><param name='ShowPositionControls' value='0'><param name='ShowStatusBar' value='0'><param name='ShowTracker' value='-1'><param name='TransparentAtStart' value='-1'><param name='VideoBorderWidth' value='0'><param name='VideoBorderColor' value='0'><param name='VideoBorder3D' value='0'><param name='Volume' value='-60'><param name='WindowlessVideo' value='0'></object>";
	            str = str.substring(0,strHead)+str1+str2+str3+str4+str.substring(strTailLength,str.length());
	            strHead = str.indexOf("[mp=",strTailLength);
	            strTail = str.indexOf("[/mp]",strTailLength);
	        }
	        return str;
	    }
	    //		[QQ]转换为htmlͼ��
	    private static String replaceQQ(String str){
	        int strHead = str.indexOf("[qq");
	        int strTail = str.indexOf("]");
	        while((strHead!=-1) && (strTail!=-1)){
	            int strTailLength = strTail+1;
	            String temp = str.substring(strHead+3,strTail);
	            str = str.substring(0,strHead)+"<img src=\"../images/qqface/"+temp+".gif\"/>"+str.substring(strTailLength,str.length());
	            strHead = str.indexOf("[qq]",strTailLength);
	            strTail = str.indexOf("[/qq]",strTailLength);
	        }
	        return str;
	    }

	    //    [file]转换为htmlͼ��
	    private static String replaceFILE(String str){
	        int strHead = str.indexOf("[FILE]");
	        int strTail = str.indexOf("[/FILE]");
	        while((strHead!=-1) && (strTail!=-1)){
	            int strTailLength = strTail+7;
	            String temp = str.substring(strHead+6,strTail);
	            String text = temp.substring(strHead+6,temp.length());
	            str = str.substring(0,strHead)+"<a href=\".."+text+"\">"+text+"</a>"+str.substring(strTailLength,str.length());
	            strHead = str.indexOf("[FILE]",strTailLength);
	            strTail = str.indexOf("[/FILE]",strTailLength);
	        }
	        return str;
	    }

	   /**
	 * @param str 要转换后的字符串
	 * @return 转换后的字符串
	 */
	  public static String unEncode(String str) {
		str = replace(str, "<br>", "\n");
		str = replace(str, "&nbsp;", " ");
	    return str;
	  }

	    /**
	     * @param source String
	     * @param oldString String
	     * @param newString String
	     * @return String
	     */
	    public static String replace(String source, String oldString,String newString) {

	        StringBuffer output = new StringBuffer();
	        int lengthOfsource = source.length();
	        int lengthOfold = oldString.length();

	        int posStart = 0;
	        int pos;
	        while ( (pos = source.indexOf(oldString, posStart)) >= 0) {
	            output.append(source.substring(posStart, pos));
	            output.append(newString);
	            posStart = pos + lengthOfold;
	            }

	        if (posStart < lengthOfsource) {
	            output.append(source.substring(posStart));
	        }
	        return output.toString();
	    }
	    
	    /** 检查设置的管理员是否都存在
		 * @param admin 没有处理的字符串
		 * @return 不存在的用户
		 */
		public static String checkAdmin(String admin){
			String split = Constants.adminsplit;
			if(admin==null || admin.length()<=0)
				return "";
			String[] admins = admin.split(split);
			for(int i=0;i<admins.length;i++){
				if(UserBiz.getUserId(admins[i].trim())<=0)
					return admins[i];
			}
			return "";
		}
		
		/** 过滤掉每个用户前后的空格
		 * @param admin 没有处理的字符串
		 * @return 处理后的字符串
		 */
		public static String getAdminString(String admin){
			String split = Constants.adminsplit;
			StringBuffer sb = new StringBuffer();
			String str = "";
			if(admin==null || admin.length()<=0)
				return "";
			String[] admins = admin.split(split);
			int lth = admins.length;
			for(int i=0;i<lth;i++){
				if(admins[i]!=null && admins[i].length()>0){
					sb.append(admins[i].trim());
					if(i<(lth-1))
						sb.append(split);
				}
			}
			str = sb.toString();
			return str;
		}
		/** 取得每个版主
		 * @param admin 没有处理的字符串
		 * @return 处理后的字符串数组
		 */
		public static String[] getAllAdmin(String admin){
			String split = Constants.adminsplit;
			String[] admins = admin.split(split);
			return admins;
		}
		
		/** 判断某个Ip是否属于某Ip段
		 * @param sysIp Ip段
		 * @param request 当前请求
		 * @return true:是 false:否
		 */
		public static boolean isRightIp(String sysIp,HttpServletRequest request){

			if(sysIp==null || sysIp.equals("") || sysIp.length()<7)
				return false;
			
			String rowsplit="\r\n";
			String btwsplit="-";
			String dian = "\\.";
			String xin="*";
			String curIp = getIP(request);
			String[] iprows = sysIp.split(rowsplit);
			String[] curIps = curIp.split(dian);
			int i=0,m=0,j=0;
			int intone = 0,inttwo = 0,intcurIp = 0;
			String[] dataIps;
			boolean flagrow = false;
			boolean flagone = false;
			for(i=0;i<iprows.length;i++){
				if(iprows[i].indexOf(btwsplit)!=-1){
					String[] ipbetween = iprows[i].split(btwsplit);
					String[] ipone = ipbetween[0].split(dian);
					String[] iptwo = ipbetween[1].split(dian);
					for(m=0;m<4;m++){
						if(xin.equals(ipone[m]) && ipone[m].equals(iptwo[m])){
							flagone = true;
							continue;
						}
						intcurIp = Integer.parseInt(curIps[m]);
						if(xin.equals(ipone[m])){
							inttwo = Integer.parseInt(iptwo[m]);
							if(inttwo>=intcurIp){
								flagone = true;
								continue;
							}else{
								flagone = false;
								break;
							}
						}
						if(xin.equals(iptwo[m])){
							intone = Integer.parseInt(ipone[m]);
							if(intone<=intcurIp){
								flagone = true;
								continue;
							}else{
								flagone = false;
								break;
							}
						}
						intone = Integer.parseInt(ipone[m]);
						inttwo = Integer.parseInt(iptwo[m]);
						if(intone<=intcurIp && intcurIp<=inttwo){
							flagone = true;
							continue;
						}else{
							flagone = false;
							break;
						}
					}
				}else{
					dataIps = iprows[i].split(dian);
					for(j=0;j<4;j++){
						if(xin.equals(dataIps[j])){
							flagone = true;
							continue;
						}else if(curIps[j].equals(dataIps[j])){
							flagone = true;
							continue;
						}else{
							flagone = false;
							break;
						}
					}
					
				}
				if(flagone){
					flagrow = true;
					break;
				}else{
					flagrow = false;
					continue;
				}
			}
			return flagrow;
		}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -