語言

SearchIterator 類別

定義

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

[Android.Runtime.Register("android/icu/text/SearchIterator", ApiSince=24, DoNotGenerateAcw=true)]
public abstract class SearchIterator : Java.Lang.Object
[<Android.Runtime.Register("android/icu/text/SearchIterator", ApiSince=24, DoNotGenerateAcw=true)>]
type SearchIterator = class
    inherit Object
繼承
SearchIterator
衍生
屬性

備註

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。 實例 會 SearchIterator 維持當前位置並掃描目標文字,回傳索引、模式匹配及每次匹配的長度。

SearchIterator 定義了文字搜尋的協議。 子類別提供了各種搜尋演算法的具體實作。 例如, StringSearch 根據物件中定義 RuleBasedCollator 的比較規則,實作語言敏感的模式匹配。

其他搜尋選項包括使用分開迭代器(BreakIterator)來限制匹配的偵測點。

SearchIterator 提供一個類似其他文字迭代類別(如 BreakIterator)的 API。 利用此類別,可以輕鬆掃描文字,尋找所有特定模式的出現。 以下範例使用物件 StringSearch 來尋找目標字串中所有「fox」的實例。 其他子類 SearchIterator 也可以以相同方式使用。

<code>
            String target = "The quick brown fox jumped over the lazy fox";
            String pattern = "fox";
            SearchIterator iter = new StringSearch(pattern, target);
            for (int pos = iter.first(); pos != SearchIterator.DONE;
                    pos = iter.next()) {
                System.out.println("Found match at " + pos +
                        ", length is " + iter.getMatchLength());
            }
</code>

的 android.icu.text.SearchIteratorJava 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

建構函式

名稱 Description
SearchIterator(ICharacterIterator, BreakIterator)

受保護的建構子供子類別使用。

SearchIterator(IntPtr, JniHandleOwnership)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

欄位

名稱 Description
Done

DONE 由 previous() 和 next() 在所有有效匹配回傳後回傳,若完全沒有匹配則由 first() 和 last() 回傳。

屬性

名稱 Description
BreakIterator

回傳用於限制偵測匹配的索引的 BreakIterator。 -或- 設定 BreakIterator,用來限制匹配偵測的點。

Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
Index

回傳正在搜尋的文本中的當前索引。

JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
JniPeerMembers

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

MatchedText

回傳與最近呼叫 #first、 #next、 #previous#last、 或 相符的文字。

MatchLength

回傳與搜尋模式相符的字串長度。

MatchStart

回傳搜尋中文字串的匹配索引。

Overlapping

如果重疊屬性已被設定,則回傳真。 -或- 決定是否回傳重疊的配對。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
Target

回傳要搜尋的字串文字。 -或- 設定目標文字要搜尋。

TargetText

搜尋目標文字。

ThresholdClass

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

ThresholdType

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

方法

名稱 Description
Clone()

建立並傳回這個 對象的複本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
Equals(Object)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
First()

回傳第一個索引,該索引字串文字與搜尋模式相符。

Following(Int32)

回傳第一個索引,該索引大小於或大於 position 字串文字與搜尋模式相符的位置。

GetElementComparisonType()

回傳 collation element 比較型態。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
HandleNext(Int32)

抽象方法,透過覆寫子類來提供尋找目標文本下一個匹配的機制。

HandlePrevious(Int32)

抽象方法,透過覆寫子類別提供尋找目標文本中先前匹配的機制。

JavaFinalize()
已淘汰.

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
Last()

回傳目標文本中與搜尋模式相符的最後索引。

Next()

回傳下一個文本與搜尋模式相符的索引,從當前位置開始。迭代器會調整為其當前索引(由 回傳的 #getIndex)即為匹配位置(若已找到)。

Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
Preceding(Int32)

回傳第一個索引,該 position 索引小於字串文字與搜尋模式相符的位置。

Previous()

回傳字串文字與搜尋模式相符的前一個點的索引,從當前位置開始。

Reset()

重置迭代。

SetElementComparisonType(SearchIterator+ElementComparisonType)

設定排序元素比較型別。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetIndex(Int32)

設定目標文字中下一次搜尋將開始的位置。

SetMatchLength(Int32)

設定目標文字中最近一次匹配的長度。

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
ToArray<T>()

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<>

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

(繼承來源 JavaObject)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

SearchIterator 是一個抽象基底類別,提供方法在文字字串中搜尋模式。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於