亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? textutilities.java

?? 用java 編寫的源碼開放的文本編輯器。有很多有用的特性
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
	 * Locates the end of the word at the specified position.	 * @param line The text	 * @param pos The position	 * @param noWordSep Characters that are non-alphanumeric, but	 * should be treated as word characters anyway	 * @param joinNonWordChars Treat consecutive non-alphanumeric	 * characters as one word	 * @since jEdit 4.1pre2	 */	public static int findWordEnd(String line, int pos, String noWordSep,					boolean joinNonWordChars)	{		if(pos != 0)			pos--;		char ch = line.charAt(pos);		if(noWordSep == null)			noWordSep = "";		//{{{ the character under the cursor changes how we behave.		int type;		if(Character.isWhitespace(ch))			type = WHITESPACE;		else if(Character.isLetterOrDigit(ch)			|| noWordSep.indexOf(ch) != -1)			type = WORD_CHAR;		else			type = SYMBOL;		//}}}loop:		for(int i = pos; i < line.length(); i++)		{			ch = line.charAt(i);			switch(type)			{			//{{{ Whitespace...			case WHITESPACE:				// only select other whitespace in this case				if(Character.isWhitespace(ch))					break;				else					return i; //}}}			//{{{ Word character...			case WORD_CHAR:				if(Character.isLetterOrDigit(ch) ||					noWordSep.indexOf(ch) != -1)				{					break;				}				else					return i; //}}}			//{{{ Symbol...			case SYMBOL:				if(!joinNonWordChars && i!=pos) return i;				// if we see whitespace, set flag.				if(Character.isWhitespace(ch))				{					return i;				}				else if(Character.isLetterOrDigit(ch) ||					noWordSep.indexOf(ch) != -1)					return i;				else				{					break;				} //}}}			}		}		return line.length();	} //}}}	//{{{ regionMatches() method	/**	 * Checks if a subregion of a <code>Segment</code> is equal to a	 * character array.	 * @param ignoreCase True if case should be ignored, false otherwise	 * @param text The segment	 * @param offset The offset into the segment	 * @param match The character array to match	 * @since jEdit 2.7pre1	 */	public static boolean regionMatches(boolean ignoreCase, Segment text,		int offset, char[] match)	{		int length = offset + match.length;		if(length > text.offset + text.count)			return false;		char[] textArray = text.array;		for(int i = offset, j = 0; i < length; i++, j++)		{			char c1 = textArray[i];			char c2 = match[j];			if(ignoreCase)			{				c1 = Character.toUpperCase(c1);				c2 = Character.toUpperCase(c2);			}			if(c1 != c2)				return false;		}		return true;	} //}}}	//{{{ spacesToTabs() method	/**	 * Converts consecutive spaces to tabs in the specified string.	 * @param in The string	 * @param tabSize The tab size	 */	public static String spacesToTabs(String in, int tabSize)	{		StringBuffer buf = new StringBuffer();		int width = 0;		int whitespace = 0;		for(int i = 0; i < in.length(); i++)		{			switch(in.charAt(i))			{			case ' ':				whitespace++;				width++;				break;			case '\t':				int tab = tabSize - (width % tabSize);				width += tab;				whitespace += tab;				break;			case '\n':				if(whitespace != 0)				{					buf.append(MiscUtilities						.createWhiteSpace(whitespace,tabSize));				}				whitespace = 0;				width = 0;				buf.append('\n');				break;			default:				if(whitespace != 0)				{					buf.append(MiscUtilities						.createWhiteSpace(whitespace,tabSize));					whitespace = 0;				}				buf.append(in.charAt(i));				width++;				break;			}		}		if(whitespace != 0)		{			buf.append(MiscUtilities.createWhiteSpace(whitespace,tabSize));		}                return buf.toString();	} //}}}	//{{{ tabsToSpaces() method	/**	 * Converts tabs to consecutive spaces in the specified string.	 * @param in The string	 * @param tabSize The tab size	 */	public static String tabsToSpaces(String in, int tabSize)	{		StringBuffer buf = new StringBuffer();		int width = 0;		for(int i = 0; i < in.length(); i++)		{			switch(in.charAt(i))			{			case '\t':				int count = tabSize - (width % tabSize);				width += count;				while(--count >= 0)					buf.append(' ');				break;			case '\n':				width = 0;				buf.append(in.charAt(i));				break;			default:				width++;				buf.append(in.charAt(i));				break;                        }                }                return buf.toString();	} //}}}	//{{{ format() method	/**	 * Formats the specified text by merging and breaking lines to the	 * specified width.	 * @param text The text	 * @param maxLineLen The maximum line length	 */	public static String format(String text, int maxLineLength, int tabSize)	{		StringBuffer buf = new StringBuffer();		int index = 0;		for(;;)		{			int newIndex = text.indexOf("\n\n",index);			if(newIndex == -1)				break;			formatParagraph(text.substring(index,newIndex),				maxLineLength,tabSize,buf);			buf.append("\n\n");			index = newIndex + 2;		}		if(index != text.length())		{			formatParagraph(text.substring(index),				maxLineLength,tabSize,buf);		}		return buf.toString();	} //}}}	//{{{ getStringCase() method	public static final int MIXED = 0;	public static final int LOWER_CASE = 1;	public static final int UPPER_CASE = 2;	public static final int TITLE_CASE = 3;	/**	 * Returns if the specified string is all upper case, all lower case,	 * or title case (first letter upper case, rest lower case).	 * @param str The string	 * @since jEdit 4.0pre1	 */	public static int getStringCase(String str)	{		if(str.length() == 0)			return MIXED;		int state = -1;		char ch = str.charAt(0);		if(Character.isLetter(ch))		{			if(Character.isUpperCase(ch))				state = UPPER_CASE;			else				state = LOWER_CASE;		}		for(int i = 1; i < str.length(); i++)		{			ch = str.charAt(i);			if(!Character.isLetter(ch))				continue;			switch(state)			{			case UPPER_CASE:				if(Character.isLowerCase(ch))				{					if(i == 1)						state = TITLE_CASE;					else						return MIXED;				}				break;			case LOWER_CASE:			case TITLE_CASE:				if(Character.isUpperCase(ch))					return MIXED;				break;			}		}		return state;	} //}}}	//{{{ toTitleCase() method	/**	 * Converts the specified string to title case, by capitalizing the	 * first letter.	 * @param str The string	 * @since jEdit 4.0pre1	 */	public static String toTitleCase(String str)	{		if(str.length() == 0)			return str;		else		{			return Character.toUpperCase(str.charAt(0))				+ str.substring(1).toLowerCase();		}	} //}}}	//{{{ Private members	private static final int WHITESPACE = 0;	private static final int WORD_CHAR = 1;	private static final int SYMBOL = 2;	//{{{ formatParagraph() method	private static void formatParagraph(String text, int maxLineLength,		int tabSize, StringBuffer buf)	{		// align everything to paragraph's leading indent		int leadingWhitespaceCount = MiscUtilities.getLeadingWhiteSpace(text);		String leadingWhitespace = text.substring(0,leadingWhitespaceCount);		int leadingWhitespaceWidth = MiscUtilities.getLeadingWhiteSpaceWidth(text,tabSize);		buf.append(leadingWhitespace);		int lineLength = leadingWhitespaceWidth;		StringTokenizer st = new StringTokenizer(text);		while(st.hasMoreTokens())		{			String word = st.nextToken();			if(lineLength == leadingWhitespaceWidth)			{				// do nothing			}			else if(lineLength + word.length() + 1 > maxLineLength)			{				buf.append('\n');				buf.append(leadingWhitespace);				lineLength = leadingWhitespaceWidth;			}			else			{				buf.append(' ');				lineLength++;			}			buf.append(word);			lineLength += word.length();		}	} //}}}	//}}}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美白人最猛性xxxxx69交| 欧美本精品男人aⅴ天堂| 国产999精品久久| 成人美女视频在线观看| 福利一区二区在线观看| 91视频xxxx| 欧美一区二区三区在线观看| 日韩一区二区免费在线电影 | 99这里只有久久精品视频| 精品一区二区三区欧美| 福利一区二区在线| 欧美三级日韩三级| 日韩欧美一区电影| 亚洲视频一区二区在线观看| 亚洲自拍偷拍图区| 极品少妇一区二区| 欧日韩精品视频| 精品日产卡一卡二卡麻豆| 国产精品不卡在线观看| 亚洲成av人影院| hitomi一区二区三区精品| 92国产精品观看| 日韩欧美一级精品久久| 自拍偷拍国产精品| 免费成人你懂的| 色综合久久久久综合体桃花网| 4438亚洲最大| 亚洲欧美日韩国产手机在线| 日韩国产精品久久久| 粉嫩av一区二区三区粉嫩| 制服丝袜亚洲色图| 亚洲综合区在线| 成人av在线播放网址| 日韩欧美国产一区二区三区| 依依成人精品视频| 成人晚上爱看视频| 久久综合国产精品| 日韩精品一级中文字幕精品视频免费观看 | 欧美色涩在线第一页| 中文字幕一区二区视频| 国产一区二区不卡在线| 欧美精品一区二区高清在线观看 | 福利一区二区在线观看| 91精品国产色综合久久久蜜香臀| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 国产一区二区不卡老阿姨| 久久久亚洲高清| 国产成人在线网站| 久久久91精品国产一区二区精品| 亚洲区小说区图片区qvod| 高清不卡在线观看av| 成人免费视频视频| 欧美日韩黄色影视| 欧美日韩国产一级| 国产精品色在线观看| 国产精品一区二区无线| 欧美人与z0zoxxxx视频| 国产在线不卡一区| 91精品国产综合久久婷婷香蕉| 一区二区三区在线观看网站| 伊人夜夜躁av伊人久久| 国产精品一级在线| 精品免费国产二区三区| 免费日韩伦理电影| 欧美日韩一区二区三区四区五区| 久久综合久久久久88| 免费久久精品视频| 欧美日韩在线电影| 亚洲一区二区黄色| 亚洲欧美日韩精品久久久久| 粉嫩av一区二区三区在线播放| 久久久美女艺术照精彩视频福利播放 | 一区二区三区国产| 99久久精品免费观看| 欧美日韩中文字幕精品| 亚洲色图视频网| 2024国产精品| 欧美老肥妇做.爰bbww| 午夜精品久久久久久久| 欧美色电影在线| 中文字幕日本乱码精品影院| av亚洲精华国产精华| 亚洲丝袜美腿综合| 91久久精品国产91性色tv| 亚洲va欧美va人人爽午夜| 777a∨成人精品桃花网| 理论片日本一区| 色综合久久综合网欧美综合网 | 欧美—级在线免费片| 色婷婷综合激情| 国产精品情趣视频| 欧洲精品一区二区三区在线观看| 日韩黄色免费电影| 欧美国产精品一区二区| 欧美综合久久久| 国产成人日日夜夜| 亚洲国产精品久久人人爱| 精品国产乱码久久久久久浪潮| 国产一区二区在线影院| 亚洲同性gay激情无套| 在线免费观看日本欧美| 玖玖九九国产精品| 亚洲视频网在线直播| 精品国产麻豆免费人成网站| 色综合久久天天| 国产精品香蕉一区二区三区| 亚洲精品一二三四区| 国产成人精品免费| 日韩欧美你懂的| 国产一区视频网站| 免费在线观看视频一区| 亚洲免费观看高清| 中文字幕第一区第二区| 日韩电影在线一区二区三区| 91精品国模一区二区三区| 在线观看www91| 91亚洲精华国产精华精华液| 黄色日韩三级电影| 日韩**一区毛片| 亚洲一二三专区| 亚洲一区二区三区不卡国产欧美| 国产亚洲精品资源在线26u| 日韩精品一区国产麻豆| 欧美日韩国产在线观看| 久久av老司机精品网站导航| 青草av.久久免费一区| 亚洲国产欧美在线| 九一九一国产精品| 伊人一区二区三区| 亚洲激情av在线| 亚洲第一主播视频| 亚洲香蕉伊在人在线观| 中文字幕字幕中文在线中不卡视频| 日本最新不卡在线| 日本女人一区二区三区| 男女男精品网站| 久久99久国产精品黄毛片色诱| 美国欧美日韩国产在线播放| 亚洲国产日韩在线一区模特| 亚洲国产日日夜夜| 日韩精品三区四区| 国产精品18久久久久久久久久久久 | 在线观看视频一区二区欧美日韩| 欧洲av在线精品| 久久婷婷国产综合国色天香| 欧美亚洲综合色| 欧美日韩国产影片| 欧美精品第一页| 在线播放中文一区| 亚洲电影第三页| 国产综合色在线视频区| 成人精品视频一区二区三区尤物| 色偷偷久久人人79超碰人人澡| 国内外成人在线| 免费观看在线色综合| 国产激情偷乱视频一区二区三区| 91视频免费看| 欧美一级日韩不卡播放免费| 国产欧美日韩在线视频| 亚洲国产乱码最新视频 | 欧美精品日韩一区| 欧美理论电影在线| 欧美亚一区二区| 久久综合久久鬼色中文字| 欧美一区二区三区四区五区| 欧美日韩久久不卡| 亚洲天堂福利av| 婷婷六月综合亚洲| 国产成人av资源| 欧美日韩和欧美的一区二区| 久久精品亚洲麻豆av一区二区| 国产精品不卡一区| 蜜臀av一区二区| 欧美性大战久久久| 日韩毛片在线免费观看| 国产综合色视频| 91麻豆精品国产自产在线观看一区| 久久日韩精品一区二区五区| 午夜精品久久久久久| 不卡的av在线播放| 欧美xxxx在线观看| 亚洲国产一区二区三区| 91蜜桃传媒精品久久久一区二区| 久久网站热最新地址| 久久国产尿小便嘘嘘尿| 精品视频在线免费| 亚洲国产精品一区二区久久| 91视频免费播放| 国产精品第13页| 国模一区二区三区白浆| 国产亚洲一区二区在线观看| 亚洲天堂福利av| 一本大道综合伊人精品热热| 视频一区二区中文字幕| 亚洲欧美成aⅴ人在线观看| 久久先锋影音av鲁色资源 | 色久综合一二码| 久久国产精品99精品国产 | 加勒比av一区二区| 在线播放一区二区三区|