當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Julia findnext方法用法及代碼示例


用法一

findnext(A, i)

Atrue 元素的 i 之後或包括 i 之後查找下一個索引,如果未找到,則查找 nothing

索引與 keys(A) pairs(A) 返回的索引類型相同。

例子

julia> A = [false, false, true, false]
4-element Vector{Bool}:
 0
 0
 1
 0

julia> findnext(A, 1)
3

julia> findnext(A, 4) # returns nothing, but not printed in the REPL

julia> A = [false false; true false]
2×2 Matrix{Bool}:
 0  0
 1  0

julia> findnext(A, CartesianIndex(1, 1))
CartesianIndex(2, 1)

用法二

findnext(predicate::Function, A, i)

查找 A 的元素的 i 之後或包含 A 的下一個索引,其中 predicate 返回 truenothing 如果未找到。

索引與 keys(A) pairs(A) 返回的索引類型相同。

例子

julia> A = [1, 4, 2, 2];

julia> findnext(isodd, A, 1)
1

julia> findnext(isodd, A, 2) # returns nothing, but not printed in the REPL

julia> A = [1 4; 2 2];

julia> findnext(isodd, A, CartesianIndex(1, 1))
CartesianIndex(1, 1)

用法三

findnext(pattern::AbstractString, string::AbstractString, start::Integer)
findnext(pattern::AbstractPattern, string::String, start::Integer)

從位置 start 開始,在 string 中查找下一個出現的 patternpattern 可以是字符串或正則表達式,在這種情況下 string 必須是 String 類型。

返回值是找到匹配序列的索引範圍,例如 s[findnext(x, s, i)] == x

findnext("substring", string, i) == start:stop 使得 string[start:stop] == "substring"i <= startnothing 如果不匹配。

例子

julia> findnext("z", "Hello to the world", 1) === nothing
true

julia> findnext("o", "Hello to the world", 6)
8:8

julia> findnext("Lang", "JuliaLang", 2)
6:9

用法四

findnext(ch::AbstractChar, string::AbstractString, start::Integer)

從位置 start 開始,在 string 中查找下一個出現的字符 ch

Julia 1.3

此方法至少需要 Julia 1.3。

例子

julia> findnext('z', "Hello to the world", 1) === nothing
true

julia> findnext('o', "Hello to the world", 6)
8

相關用法


注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 Base.findnext — Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。