match(Subject, Pattern, Options) -> Found | nomatch
OTP R14B
類型:
Subject = binary()
Pattern = binary() | [binary()] | cp()
Found = part()
Options = [Option]
Option = {scope, part()}
part() = {開始::integer() >= 0, 長度::integer()}
搜索 Subject
中第一次出現的 Pattern
並返回位置和長度。
該函數返回 {Pos, Length}
中的二進製文件 Pattern
,從 Subject
中的最低位置開始。
例子:
1> binary:match(<<"abcde">>, [<<"bcde">>, <<"cd">>],[]).
{1,4}
盡管 <<"cd">>
在 <<"bcde">>
之前結束,但 <<"bcde">>
首先開始,因此是第一個匹配項。如果兩個重疊的匹配項從同一位置開始,則返回最長的匹配項。
選項摘要:
- {scope, {Start, Length}}
-
僅搜索指定部分。返回值仍然具有與
Subject
開頭的偏移量。允許使用負數Length
,如本手冊數據類型部分所述。
如果沒有找到 Pattern
中的任何字符串,則返回原子 nomatch
。
對於說明Pattern
,參見函數compile_pattern/1
.
如果在選項中指定 {scope, {Start,Length}}
,使得 Start
> Subject
的大小、Start
+ Length
< 0 或 Start
+ Length
> Subject
的大小,則 badarg
異常被提出。
相關用法
- erlang match(Table, Pattern)用法及代碼示例
- erlang match_spec_run(List, CompiledMatchSpec)用法及代碼示例
- erlang matches(Subject, Pattern, Options)用法及代碼示例
- erlang max用法及代碼示例
- erlang make_dir用法及代碼示例
- erlang make_tuple(Arity, InitialValue)用法及代碼示例
- erlang make_tuple(Arity, DefaultValue, InitList)用法及代碼示例
- erlang map_get(Key, Map)用法及代碼示例
- erlang map_size(Map)用法及代碼示例
- erlang max(Term1, Term2)用法及代碼示例
- erlang map(Fun, Orddict1)用法及代碼示例
- erlang map(Fun, MapOrIter)用法及代碼示例
- erlang mapfoldl(Fun, Acc0, List1)用法及代碼示例
- erlang make_tar(Name)用法及代碼示例
- erlang member用法及代碼示例
- erlang min用法及代碼示例
- erlang merge用法及代碼示例
- erlang memory用法及代碼示例
- erlang memory()用法及代碼示例
- erlang min(Term1, Term2)用法及代碼示例
- erlang monitor(Type :: process, Item :: monitor_process_identifier())用法及代碼示例
- erlang monitor(Type :: process, Item :: monitor_process_identifier(), Opts :: [monitor_option()])用法及代碼示例
- erlang merge(Fun, Orddict1, Orddict2)用法及代碼示例
- erlang module(AbsForms)用法及代碼示例
- erlang monitor(Socket)用法及代碼示例
注:本文由純淨天空篩選整理自erlang.org大神的英文原創作品 match(Subject, Pattern, Options) -> Found | nomatch。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。