无涯教程-Erlang - Strings(字符串)

101 阅读2分钟

通过将字符串括在引号中,可以在Erlang中构造一个字符串文字,需要使用双引号(如" Hello Learnfk")构造Erlang中的字符串。

-module(helloLearnfk). 
-export([start/0]). 

start() -> Str1="This is a string", io:fwrite("pn",[Str1]).

上面程序的输出将是-

This is a string

接下来,我们将讨论可用于字符串的各种操作。

Sr.No String Methods & 描述
1

len

该方法返回特定字符串的长度。

2

equal

该方法返回一个布尔值,表明一个字符串是否等于另一个字符串。

3

concat

该方法合并2个字符串并返回串联的字符串。

4

chr

该方法返回字符串中字符的索引位置。

5

str

该方法返回字符串中子字符串的索引位置。

6

substr

该方法根据起始位置和起始位置的字符数返回原始字符串的子字符串。

7

left

该方法根据起始位置和起始位置的字符数返回原始字符串的子字符串。

左随字符

该方法根据字符数从字符串的左侧返回子字符串。但是,如果数字大于字符串的长度,则可以选择包含尾随字符。

left(str1,number,$character)
  • str1               - 这是需要从中提取子字符串的字符串。

  • number       - 这是子字符串中需要出现的字符数。

  • $character  - 要作为结尾字符包含的字符。

根据字符串的左侧和数字返回原始字符串的子字符串。

-module(helloLearnfk). 
-import(string,[left/3]). 
-export([start/0]). 

start() -> Str1="hello", Str2=left(Str1,10,$.), io:fwrite("pn",[Str2]).

当我们运行上述程序时,我们将得到以下输出。

"hello....."

右随字符

该方法根据字符数从字符串的右边返回子字符串。

right(str1,number)
  • str1        - 这是需要从中提取子字符串的字符串。

  • number  - 这是子字符串中需要出现的字符数。

根据字符串的右侧和数字返回原始字符串的子字符串。

-module(helloLearnfk). 
-import(string,[right/2]). 
-export([start/0]). 

start() -> Str1="hello Learnfk", Str2=right(Str1,2), io:fwrite("pn",[Str2]).

当我们运行上述程序时,我们将得到以下输出。

ld

带有尾随字符

该方法根据字符数从字符串的右边返回子字符串,但是,如果数字大于字符串的长度,则可以选择包含尾随字符。

right(str1,number,$character)
  • str1           - 这是需要从中提取子字符串的字符串。

  • number     - 这是子字符串中需要出现的字符数。

  • $character - 要作为结尾字符包含的字符。

根据字符串的右侧和数字返回原始字符串的子字符串。

-module(helloLearnfk). 
-import(string,[right/3]). 
-export([start/0]). 

start() -> Str1="hello", Str2=right(Str1,10,$.), io:fwrite("pn",[Str2]).

当我们运行上述程序时,我们将得到以下输出。

".....hello"

to_lower 小写

该方法以小写形式返回字符串。

to_lower(str1)
  • str1 -  这是需要从其转换为小写字母的字符串。

返回小写的字符串。

(Str1), 
io:fwrite("~p~n",[Str2]).

当我们运行上述程序时,我们将得到以下输出。

"hello Learnfk"

to_upper 大写

该方法以大写形式返回字符串。

to_upper(str1)
  • str1 -  这是需要从其转换为大写字母的字符串。

-module(helloLearnfk). 
-import(string,[to_upper/1]). 
-export([start/0]). 

start() -> Str1="hello Learnfk", Str2=to_upper(Str1), io:fwrite("pn",[Str2]).

当我们运行上述程序时,我们将得到以下输出。

"HELLO WORLD"

sub_string 截取

返回String的子字符串,从子位置Start到字符串的末尾,或者到Stop位置(包括Stop位置)。

sub_string(str1,start,stop)
  • str1   - 这是需要从其返回子字符串的字符串。

  • start  - 这是子字符串的开始位置

  • stop  - 这是子字符串的停止位置

返回String的子字符串,从子位置Start到字符串的末尾,或者到Stop位置(包括Stop位置)。

-module(helloLearnfk). 
-import(string,[sub_string/3]). 
-export([start/0]). 

start() -> Str1="hello Learnfk", Str2=sub_string(Str1,1,5), io:fwrite("pn",[Str2]).

当我们运行上述程序时,我们将得到以下输出。

"hello"

参考链接

www.learnfk.com/erlang/erla…