Engee 文档
Notebook

文本比较

在这个例子中,我们来看看如何比较表示为字符串数组的文本片段。

比较字符串是否相等

您可以使用关系运算符==和比较字符串数组是否相等!=. 比较字符串数组时,输出是一个逻辑数组,其中1(true)为true,0(false)不正确。

In [ ]:
str1 = "Hello";
str2 = "World";
str1,str2
Out[0]:
("Hello", "World")
In [ ]:
str1 != str2
Out[0]:
true
In [ ]:
str1 = ["Mercury" "Gemini" "Apollo";"Skylab" "Skylab B" "International Space Station"];
str2 = "Apollo";
str1 .== str2
Out[0]:
2×3 BitMatrix:
 0  0  1
 0  0  0
In [ ]:
str2 = ["Mercury" "Mars" "Apollo";"Jupiter" "Saturn" "Neptune"];
str1 .!= str2
Out[0]:
2×3 BitMatrix:
 0  1  0
 1  1  1

将字符串与其他关系运算符进行比较

您还可以使用关系运算符>、>=、<和<=来比较字符串。 以大写字母开头的行先于以小写字母开头的行。 例如,字符串"ABC"比"abc"小。 数字和一些标点符号也放在字母之前。

In [ ]:
"ABC" < "abc"
Out[0]:
true

使用>运算符将包含名称的字符串数组与另一个名称进行比较。 Sanchez,de Ponte和Nash的名字来自Matthews,因为S,d和N都比M大。

In [ ]:
str = ["Sanchez","Jones","de Ponte","Crosby","Nash"]; 
TF = (str .> "Matthews")
Out[0]:
5-element BitVector:
 1
 0
 1
 0
 1

还有一个功能 cmp(),它比较两个字符串。 如果它们相等,则返回0,当第一个字符串参数大于第二个参数时返回1,当第一个参数小于第二个参数时返回-1。

In [ ]:
cmp("ABC","abc")
Out[0]:
-1

在本文中,考虑了在字符串数组中执行文本比较的函数。 有关使用文本和字符串数组的详细信息,请参阅以下部分:文本字符串和[数组](https://engee.com/helpcenter/stable/julia/base/arrays.html