> Erlang中文手册 > str/2 返回字符在字符串里第一次出现的位置

string:str/2

返回字符在字符串里第一次出现的位置

用法:

str(String, SubString) -> Index

内部实现:

-spec str(String, SubString) -> Index when
      String :: string(),
      SubString :: string(),
      Index :: non_neg_integer().

str(S, Sub) when is_list(Sub) -> str(S, Sub, 1).

str([C|S], [C|Sub], I) ->
    case prefix(Sub, S) of
	true -> I;
	false -> str(S, [C|Sub], I+1)
    end;
str([_|S], Sub, I) -> str(S, Sub, I+1);
str([], _Sub, _I) -> 0.

返回字符 SubString 在字符串 String 第一次出现的位置。

string:str("abcbdefg", "b").

如果不存在,则返回 0

string:str("abcbdefg", "h").