创建字符串数组
字符串数组存储文本片段并提供一组用于处理它们的函数。 字符串数组可以以与任何其他类型的数组相同的方式进行索引,重塑和组合。 在本文中,我们将介绍一些用于处理字符串数组的函数。
字符串数组的每个元素都包含一个由1乘n组成的字符序列.
str = "Hello, world"
让我们使用[]运算符创建行矩阵。
satellites = ["Ganymede" "Europa" "Callisto";"Amalthea" "Rings of Jupiter" "Leda"]
字符串数组支持索引。 我们使用索引来访问str矩阵的第一行。
satellites[1,:]
让我们转向str第二行中的第二个元素。
satellites[2,2]
您可以使用函数确定给定矩阵的大小 size().
size(satellites)
使用函数的数组元素数 length().
length(satellites)
您还可以指定字符串数组的每个元素中的字符数。 如果在括号前放一个句点。 这将意味着我们访问数组的一个元素并对其应用一个函数。 length().
length.(satellites)
您可以使用函数将一组数值转换为字符串 string(). 例如,我们获取日期和时间并将值转换为字符串。
using Dates
d = now()
string(d)
创建空行
字符串数组可以包含空值和缺失值。 空字符串包含零个字符。 当显示一个空字符串时,结果是一对没有任何内容的双引号("")。 缺少的字符串相当于数值数组的NaN字符串。 它指示字符串数组中缺少值的位置。 显示缺失行时,结果将为missing。
您可以使用函数创建空行 String().
str = String("")
您可以创建一个空行矩阵,例如,使用函数 fill().
str = fill("",(2,3))
要创建缺失字符串,请将关键字missing分配给变量。
str = missing
您可以创建一个包含空行和缺失行的行数组。
str = ["" "Ram" missing]
使用功能 ismissing() 以确定哪些元素是具有缺失值的字符串。 请注意,空行不是缺失行。
ismissing.(str)
我们将使用函数找到空格字符 occursin() 在一行中,并用带有函数的破折号替换它们 replace().
TF = occursin.(" ", satellites)
satellites = replace.(satellites, " " => "-")
display(satellites)
分割、组合和排序字符串数组
将字符串组合成字符串数组的方式与组合任何其他类型的数组的方式相同。
str1 = ["a","b","c"];
str2 = ["d","e","f"];
str3 = ["g","h","i"];
str = [str1 str2 str3]
功能 permutedims() 允许您使用字符串元素转置矩阵。
str = permutedims(str)
要向行添加文本,请使用运算符运算符*。 运算符将文本添加到行中,但不会更改行数组的大小。
Name = ["Mary", "John", "Elizabeth", "Paul", "Ann"]
Name = [name * " Smith" for name in Name]
例如,让我们组合一个名字和姓氏的数组。
Name = ["Mary", "John", "Elizabeth", "Paul", "Ann"];
Lastname = ["Jones", "Adams", "Young", "Burns", "Spencer"];
full_names = Name .* " " .* Lastname
但也有分离功能 split(). 它可以用来分隔数组的字符串元素。
full_names = split.(full_names)
该函数允许您对字符串元素进行排序。 sort().
sort(Name)
除了使用字符串数组的示例之外,还有许多其他函数。 您可以在[Arrays]部分了解有关功能的更多信息(https://engee.com/helpcenter/stable/julia/base/arrays.html )。