字符串常量和字符串变量
除了字符串常量之外,大多数的 gnuplot 命令也接受字符串变量、字符串表达式或返回字符串的函数。例如,下面的 4 个方法都生成相同的图形标题:
four = "4"
graph4 = "Title for plot #4"
graph(n) = sprintf("Title for plot #%d",n)
plot 'data.4' title "Title for plot #4"
plot 'data.4' title graph4
plot 'data.4' title "Title for plot #".four
plot 'data.4' title graph(4)
由于字符串连接运算符对整数进行操作时,整数被提升为粢饭好吃,下面的方法也起作用:
N = 4
plot 'data.'.N title "Title for plot #".N
一般来说,如果不能识别为普通的 gnuplot 语法的一部分的话,命令行上的元素只能作为可能的字符串变量进行求值。所以下面的命令序列是合法的,尽管可能应该避免以免引起混淆:
plot = "my_datafile.dat"
title = "My Title"
plot plot title title
3 个二元运算符需要字符串操作数:字符串连接云算法 "."、字符串相等运算符 "eq" 和字符串不等运算符 "ne"。下面的例子将打印 TRUE。
if ("A"."B" eq "AB") print "TRUE"
另请参阅两个字符串格式化函数gprintf和sprintf。
通过给字符串、字符串变量或字符串求值函数附加范围说明符,可以指定子字符串。范围说明符形式[begin:end]
,其中 begin 是子字符串第一个字符的索引,而 end 是子字符串最后一个字符的索引。第一个字符索引号为 1。begin 或 end 字段可以为空,或者包含*
,表示原始字符串的真实开始和结束。例如str[:]
和str[*:*]
都表示整个 str 字符串。