CharMatcher提供了各種方法來處理各種JAVA char類型值。
類聲明
以下是com.google.common.base.CharMatcher類的聲明:
@GwtCompatible(emulated=true) public final class CharMatcher extends Object
字體
| S.N. | 字段及說明 | 
|---|---|
| 1 | static CharMatcher ANY 匹配任意字元。 | 
| 2 | static CharMatcher ASCII 確定字元是否為ASCII碼,這意味著它的代碼點低於128。 | 
| 3 | static CharMatcher BREAKING_WHITESPACE 確定一個字元是否是一個破空白(即,一個空格可以解釋為格式目的詞之間休息)。 | 
| 4 | static CharMatcher DIGIT 確定一個字元是否是根據Unicode數字。 | 
| 5 | static CharMatcher INVISIBLE 確定一個字元是否是看不見的;也就是說,如果它的Unicode類是任何SPACE_SEPARATOR,LINE_SEPARATOR,PARAGRAPH_SEPARATOR,控制,FORMAT,SURROGATE和PRIVATE_USE根據ICU4J。 | 
| 6 | static CharMatcher JAVA_DIGIT 確定一個字元是否是按照Java的定義一個數字。 | 
| 7 | static CharMatcher JAVA_ISO_CONTROL 確定一個字元是否是所指定的Character.isISOControl(char)ISO控制字元。 | 
| 8 | static CharMatcher JAVA_LETTER 確定一個字元是否是按照Java的定義的字母。 | 
| 9 | static CharMatcher JAVA_LETTER_OR_DIGIT 確定一個字元是否是按照Java的定義,一個字母或數字。 | 
| 10 | static CharMatcher JAVA_LOWER_CASE 確定一個字元是否是按照Java定義的小寫。 | 
| 11 | static CharMatcher JAVA_UPPER_CASE 確定一個字元是否是按照Java定義的大寫。 | 
| 12 | static CharMatcher NONE 匹配任何字元。 | 
| 13 | static CharMatcher SINGLE_WIDTH 確定一個字元是否是單寬度(不是雙倍寬度)。 | 
| 14 | static CharMatcher WHITESPACE 決定根據最新的Unicode標準是否字元是空白,如圖所示這裏。 | 
構造函數
| S.N. | 構造函數 & 描述 | 
|---|---|
| 1 | protected CharMatcher() 構造方法,供子類使用。 | 
類方法
| S.N. | 方法 & 描述 | 
|---|---|
| 1 | CharMatcher and(CharMatcher other) 返回一個匹配器,匹配兩種匹配器和其他任何字元。 | 
| 2 | static CharMatcher anyOf(CharSequence sequence) 返回一個字元匹配匹配任何字元出現在給定的字元序列。 | 
| 3 | boolean apply(Character character) 不推薦使用。只有提供滿足謂詞介面;用匹配(字元)代替。 | 
| 4 | String collapseFrom(CharSequence sequence, char replacement) 返回輸入字元序列的字串拷貝,每個組連續的字元匹配此匹配由單一的替換字元替換。 | 
| 5 | int countIn(CharSequence sequence) 返回一個字元序列中發現匹配的字元的數目。 | 
| 6 | static CharMatcher forPredicate(Predicate<? super Character> predicate) 返回與相同的行為給定的基於字元的謂詞匹配,但運行在原始的字元,而不是實例。 | 
| 7 | int indexIn(CharSequence sequence) 返回第一個匹配字元的索引中的一個字元序列,或-1,如果沒有匹配的字元存在。 | 
| 8 | int indexIn(CharSequence sequence, int start) 返回第一個匹配字元的索引中的一個字元序列,從給定位置開始,或-1,如果沒有字元的位置之後匹配。 | 
| 9 | static CharMatcher inRange(char startInclusive, char endInclusive) 返回一個字元匹配匹配給定範圍內的任何字元(兩個端點也包括在內)。 | 
| 10 | static CharMatcher is(char match) 返回一個字元匹配匹配只有一個指定的字元。 | 
| 11 | static CharMatcher isNot(char match) 返回一個字元匹配匹配除了指定的任何字元。 | 
| 12 | int lastIndexIn(CharSequence sequence) 返回最後一個匹配字元的索引中的字元序列,或-1,如果沒有匹配的字元存在。 | 
| 13 | abstract boolean matches(char c) 確定給定字元一個true或false值。 | 
| 14 | boolean matchesAllOf(CharSequence sequence) 確定給定字元一個true或false值。 | 
| 15 | boolean matchesAnyOf(CharSequence sequence) 返回true如果字元序列包含至少一個匹配的字元。 | 
| 16 | boolean matchesNoneOf(CharSequence sequence) 返回true,如果一個字元序列中沒有匹配的字元。 | 
| 17 | CharMatcher negate() 返回一個匹配器,不受此匹配匹配任何字元。 | 
| 18 | static CharMatcher noneOf(CharSequence sequence) 返回一個字元匹配器匹配不存在於給定的字元序列的任何字元。 | 
| 19 | CharMatcher or(CharMatcher other) 返回一個匹配器,匹配任何匹配或其他任何字元。 | 
| 20 | CharMatcher precomputed() 返回一個字元匹配功能上等同於這一個,但它可能會快於原來的查詢;您的里程可能會有所不同。 | 
| 21 | String removeFrom(CharSequence sequence) 返回包含的字元序列的所有非匹配的字元,為了一個字串。 | 
| 22 | String replaceFrom(CharSequence sequence, char replacement) 返回輸入字元序列的字串副本,其中每個字元匹配該匹配器由一個給定的替換字元替換。 | 
| 23 | String replaceFrom(CharSequence sequence, CharSequence replacement) 返回輸入字元序列的字串副本,其中每個字元匹配該匹配器由一個給定的替換序列替換。 | 
| 24 | String retainFrom(CharSequence sequence) 返回包含的字元序列的所有字元匹配,為了一個字串。 | 
| 25 | String toString() 返回此CharMatcher,如CharMatcher.or(WHITESPACE,JAVA_DIGIT)的字串表示。 | 
| 26 | String trimAndCollapseFrom(CharSequence sequence, char replacement) 折疊匹配字元完全一樣collapseFrom一組如collapseFrom(java.lang.CharSequence, char) 做的一樣,不同之處在於,無需更換一組被移除的匹配字元在開始或該序列的結束。 | 
| 27 | String trimFrom(CharSequence sequence) 返回輸入字元序列省略了所有匹配器從一開始,並從該串的末尾匹配字元的字串。 | 
| 28 | String trimLeadingFrom(CharSequence sequence) 返回輸入字元序列,它省略了所有這些匹配的字串開始處匹配字元的字串。 | 
| 29 | String trimTrailingFrom(CharSequence sequence) 返回輸入字元序列,它省略了所有這些匹配的字串的結尾匹配字元的字串。 | 
繼承的方法
這個類繼承了以下類方法:
- 
		java.lang.Object 
CharMatcher 例子
使用所選擇的編輯器創建下麵的java程式 C:/> Guava
GuavaTester.javaimport com.google.common.base.CharMatcher; import com.google.common.base.Splitter; public class GuavaTester { public static void main(String args[]){ GuavaTester tester = new GuavaTester(); tester.testCharMatcher(); } private void testCharMatcher(){ System.out.println(CharMatcher.DIGIT.retainFrom("mahesh123")); // only the digits System.out.println(CharMatcher.WHITESPACE.trimAndCollapseFrom(" Mahesh Parashar ", ' ')); // trim whitespace at ends, and replace/collapse whitespace into single spaces System.out.println(CharMatcher.JAVA_DIGIT.replaceFrom("mahesh123", "*")); // star out all digits System.out.println(CharMatcher.JAVA_DIGIT.or(CharMatcher.JAVA_LOWER_CASE).retainFrom("mahesh123")); // eliminate all characters that aren't digits or lowercase } }
驗證結果
使用javac編譯器編譯如下類
C:\Guava>javac GuavaTester.java
現在運行GuavaTester看到的結果
C:\Guava>java GuavaTester
看看結果
123 Mahesh Parashar mahesh*** mahesh123
						上一篇:
								Guava Spiltter類
												下一篇:
								Guava CaseFormat類
					
					