Erlang - 字符串


在 Erlang 中,字符串文字是通过将字符串文本括在引号中来构造的。Erlang 中的字符串需要使用双引号构建,例如“Hello World”。

以下是 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”

接下来,我们将讨论可用于 String 的各种操作。请注意,对于字符串操作,您还需要包含字符串库。

先生编号 字符串方法和描述
1

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

2

平等的

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

3

连接

该方法连接 2 个字符串并返回连接后的字符串。

4

chr

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

5

斯特

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

6

子字符串

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

7

左边

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

留下尾随字符

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

句法

left(str1,number,$character)

参数

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

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

  • $Character - 作为尾随字符包含的字符。

返回值

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

例如

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

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

输出

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

"hello....."

正确的

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

句法

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(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(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(str1)

参数

  • str1 - 这是需要转换为大写的字符串。

  • 返回值- 返回大写的字符串。

例如

-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"

子串

返回 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"