编辑这个页面须要登录或更高权限!

Erlang 字符串

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

以下是在Erlang中使用字符串的示例-

实例

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

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

上面的示例创建了一个名为 Str1 的字符串变量。字符串“This is a string”已分配给变量并相应显示。

上面程序的输出将是:

“This is a string”

接下来,我们将讨论各种operations available for Strings。请注意,对于字符串操作,还需要包括字符串库。

序号字符串方法和描述
1

len

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

2

equal

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

3

concat

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

4

chr

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

5

str

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

6

substr

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

7

left

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

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

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

当我们运行上面的程序时,我们将得到以下结果。

"hello....."

right

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

语法

right(str1,number)

参数

  • str1 −这是需要从中提取子字符串的字符串。

  • Number −这是子字符串中需要出现的字符数。

返回值

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

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

start() -> 
   Str1 = "hello World", 
   Str2 = right(Str1,2), 
   io:fwrite("~p~n",[Str2]).

当我们运行上面的程序时,我们将得到以下结果。

“ld”

right带尾随字符

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

语法

right(str1,number,$character)

参数

  • str1 −这是需要从中提取子字符串的字符串。

  • Number −这是子字符串中需要出现的字符数。

  • $Character −包含为结尾字符的字符。

返回值

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

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

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

当我们运行上面的程序时,我们将得到以下结果。

".....hello"

to_lower

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

语法

to_lower(str1)

参数

  • str1 −这是需要从其转换为小写字母的字符串。

返回值

返回小写的字符串。

-module(helloworld). 
-import(string,[to_lower/1]). 
-export([start/0]). 

start() -> 
   Str1 = "HELLO WORLD", 
   Str2 = to_lower(Str1), 
   io:fwrite("~p~n",[Str2]).

当我们运行上面的程序时,我们将得到以下结果。

"hello world"

to_upper

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

语法

to_upper(str1)

参数

  • str1 −这是需要从其转换为大写字母的字符串。

  • Return Value −返回大写字符串。

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

start() -> 
   Str1 = "hello world", 
   Str2 = to_upper(Str1), 
   io:fwrite("~p~n",[Str2]).

当我们运行上面的程序时,我们将得到以下结果。

"HELLO WORLD"

sub_string

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

语法

sub_string(str1,start,stop)

参数

  • str1 −这是需要从其返回子字符串的字符串。

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

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

返回值

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

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

start() -> 
   Str1 = "hello world", 
   Str2 = sub_string(Str1,1,5), 
   io:fwrite("~p~n",[Str2]).

当我们运行上面的程序时,我们将得到以下结果。

"hello"