正则表达式捕获组的Julia语法是什么(例如Perl中的$ 1)?

Lif*_*rks 1 regex capture-group julia

我想知道在Perl的正则表达式(访问正则表达式捕获的子串)中Julia相当于1美元,2美元......

例如

$s = "some random string";
$s =~ m/(o.e).+(i.g)/;
print $1, "\n", $2;
Run Code Online (Sandbox Code Playgroud)

版画

ome
ing
Run Code Online (Sandbox Code Playgroud)

Bog*_*ski 8

正如Julia手册所解释的那样,您可以RegexMatch通过访问其captures字段或使用来从对象捕获子字符串getindex.例如:

julia> s = "some random string"
"some random string"

julia> m = match(r"(o.e).+(i.g)", s)
RegexMatch("ome random string", 1="ome", 2="ing")

julia> m[1] # access using getindex
"ome"

julia> m[2]
"ing"

julia> m.captures
2-element Array{Union{SubString{String}, Void},1}:
 "ome"
 "ing"

julia> m = match(r"om", s) # no captured substrings
RegexMatch("om")

julia> m.captures
0-element Array{Union{SubString{String}, Void},1}

julia> m = match(r"ox", s)

julia> typeof(m) # no match, m is nothing
Void
Run Code Online (Sandbox Code Playgroud)