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

📄 strip.java

📁 LazyJ是一个快速Web应用程序开发框架。它包括: *.一个非常快的模板引擎
💻 JAVA
字号:
/** *  */package lazyj.page.tags;import java.util.Locale;import java.util.StringTokenizer;import lazyj.page.StringFormat;/** * <i>strip</i> or <i>stripTAG,LIST</i> cut the HTML tags from the text, optionally leaving some * of them behind. *  * @author costing * @since 2006-10-13 * @see Cut */public final class Strip implements StringFormat {	/**	 * Implement the "strip" tag. The text in HTML format will be converted to a plain text representation.<br>	 * This tag can have options, separated by comma:<br>	 * <ul>	 *   <li><b>BR</b> : leave BR tags in the output text</li>	 *   <li><b>P</b> : leave P tags in the output text</li>	 *   <li><b>A</b> : leave A tags in the output text</li>	 *   <li><b>IMG</b> : leave IMG tags in the output text</li>	 *   <li><b>FONT</b> : leave FONT tags in the output text</li>	 *   <li><b>DIV</b> : leave FONT tags in the output text</li>	 *   <li><b>SPAN</b> : leave FONT tags in the output text</li>	 * </ul>	 * 	 * @param s string to format	 * @param sTag tag, ignored	 * @param sOption either "date" or "dateOPT,OPT2,..."	 * @return the formatted string	 */	public String format(final String sTag, final String sOption, final String s) {		boolean bBR = false;		boolean bP  = false;		boolean bA  = false;		boolean bIMG = false;		boolean bFONT = false;		boolean bDIV = false;		boolean bSPAN = false;		boolean bB = false;		boolean bI = false;		boolean bU = false;		boolean bAnyFlag = false;				if (sOption!=null && sOption.length()>5){			final StringTokenizer st = new StringTokenizer(sOption.substring(5).toLowerCase(Locale.getDefault()), ",");						while (st.hasMoreTokens()){				final String sToken = st.nextToken();								if (sToken.equals("br")) {bBR = true; bAnyFlag = true;}				else if (sToken.equals("p")) {bP = true; bAnyFlag = true;}				else if (sToken.equals("a")) {bA = true; bAnyFlag = true;}				else if (sToken.equals("img")) {bIMG = true; bAnyFlag = true;}				else if (sToken.equals("font")) {bFONT = true; bAnyFlag = true;}				else if (sToken.equals("div")) {bDIV = true; bAnyFlag = true;}				else if (sToken.equals("span")) {bSPAN = true; bAnyFlag = true;}				else if (sToken.equals("b")) {bB = true; bAnyFlag = true;}				else if (sToken.equals("i")) {bI = true; bAnyFlag = true;}				else if (sToken.equals("u")) {bI = true; bAnyFlag = true;}			}		}				final StringBuilder sb = new StringBuilder(s.length());		int iOld = 0;		int idx;				boolean bDel = false;				while ( (idx=s.indexOf('<', iOld)) >= 0){			if (idx>iOld){				if (bDel && sb.length()>0)					sb.append(' ');								sb.append(s.substring(iOld, idx));			}						int iEnd = s.indexOf('>', idx);						if (iEnd>0){				bDel = true;								if (bAnyFlag){					final String sHTMLTag = s.substring(idx+1, iEnd);					final String sHTMLTagLower = sHTMLTag.toLowerCase(Locale.getDefault());										if (							(bBR && (sHTMLTagLower.startsWith("br") || sHTMLTagLower.startsWith("/br"))) ||							(bP && (sHTMLTagLower.startsWith("p") || sHTMLTagLower.startsWith("/p"))) ||							(bA && (sHTMLTagLower.startsWith("a") || sHTMLTagLower.startsWith("/a"))) ||							(bIMG && (sHTMLTagLower.startsWith("img") || sHTMLTagLower.startsWith("/img"))) ||							(bFONT && (sHTMLTagLower.startsWith("font") || sHTMLTagLower.startsWith("/font"))) ||							(bDIV && (sHTMLTagLower.startsWith("div") || sHTMLTagLower.startsWith("/div"))) ||							(bSPAN && (sHTMLTagLower.startsWith("span") || sHTMLTagLower.startsWith("/span"))) ||							(bB && (sHTMLTagLower.equals("b") || sHTMLTagLower.equals("/b"))) ||							(bI && (sHTMLTagLower.equals("i") || sHTMLTagLower.equals("/i"))) ||							(bU && (sHTMLTagLower.equals("u") || sHTMLTagLower.equals("/u")))						)					{						sb.append('<').append(sHTMLTag).append('>');						bDel = false;					}				}			}			else{				// last tag doesn't close, ignore				iOld = s.length();				break;			}						iOld = iEnd+1;		}				if (bDel && sb.length()>0)			sb.append(' ');				sb.append(s.substring(iOld));				return sb.toString();	}	/**	 * Debug method	 * 	 * @param args	 */	public static void main(String[] args) {		Strip strip = new Strip();				System.out.println(strip.format(null, "stripP", "asdf<a href=x bubu</a><a></a>gigi<br blabla"));	}	}

⌨️ 快捷键说明

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