erlang binary:match和binary:matches接口简易区分

binary:match和binary:matches的对比
match的接口返回的是符合字符串中第一个匹配到的字母的{下标,词组长度}
举例 binary:match (<< "abcde" >>, [<< "bcde" >>, << "a" >>]).会返回{0,1},0代表原字符串中第一个匹配到的字母下标("abcde"中的'a'下标为0),1是匹配到的数组长度,下标相同的按字符串长度比较 binary:match (<< "abcde" >>, [<< "abcde" >>, << "a" >>]).返回{0,5}
matches的接口返回的是符合字符串中下标不同且已匹配字符串中无重复字符的字符串的[{下标,长度},{下标,长度}]
举例binary:matches(<<"abcde">>,[<<"bcde">>,<<"ab">>]).返回[{0,2}],因为第一个匹配到的是a字符,第二个匹配到的是b字符,b在"ab"中先检测到匹配,所以<<"bcde">>匹配不到b。如果改成binary:matches(<<"abcde">>,[<<"cde">>,<<"ab">>])就会返回[{0,2},{2,3}]。
注意已匹配到的字符串不再进行匹配。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值