Provided by: manpages-zh_1.5.2-1.1_all bug

NAME

       string - 操纵字符串

总览 SYNOPSIS

       string option arg ?arg ...?
_________________________________________________________________

描述 DESCRIPTION

       依赖于 option (选项)进行某种字符串操作。合法的 option (可以是缩写)有:                      │

       string bytelength string                                                                   │
              返回一个十进制字符串,给出在内存中表示 string 用的字节数。因为 UTF-8 使用一到三字节 │
              来表示 Unicode   字符,字节长度可能与通常的字符长度不同。一个脚本关心字节长度的情况 │
              较少见。多数情况下,你应该使用   string  length  操作。关于  UTF-8 表示的详情请参考 │
              Tcl_NumUtfChars 手册页。                                                            │

       string compare ?-nocase? ?-length int? string1 string2                                     │
              对字符串  string1string2  进行逐个字符的比较。依赖于      string1  在词典顺序
              上(lexicographically)小于、等于、大于    string2,返回   -1、0、或  1。  如果指定了 │
              -length     ,则在比较中只使用前  length  个字符。如果  -length      是负数,则被忽 │
              略。如果指定了 -nocase     ,则使用大小写不敏感方式比较字符串。                     │

       string equal ?-nocase? ?-length int? string1 string2                                       │
              对字符串  string1string2 进行逐个字符的比较。如果     string1string2 等同则 │
              返回 1,否则返回 0。如果指定了      -length  ,则在比较中只使用前  length      个字 │
              符。如果  -length 是负数,则被忽略。如果指定了     -nocase ,则使用大小写不敏感方式 │
              比较字符串。                                                                        │

       string first string1 string2 ?startIndex?                                                  │
              在   string2   中查找精确的匹配   string1    中的字符的一个字符序列。如果找到,返回
              string2  中的第一个这样的匹配的第一个字符的索引。如果未找到,返回     -1。 如果指定 │
              了 startIndex (以可被 index     方法接受的任何形式),则约束查找为在 string2      中 │
              从用索引指定的字符开始。例如,                                                      │
                     string first a 0a23456789abcdef 5                                            │
              将返回 10, but                                                                      │
                     string first a 0123456789abcdef 11                                           │
              将返回 -1.                                                                          │

       string index string charIndex
              返回  string  参数的第  charIndex 个字符。charIndex     中 0 对应着字符串的第一个字
              符。                                                                                │
               charIndex     可以被指定如下:                                                      │

              integer                                                                             │
                        用整数索引指定字符。                                                      │

              end                                                                                 │
                        字符串的最后一个字符。                                                    │

              end-integer                                                                         │
                        字符串最后一个字符减去指定整数偏移量(例如, end-1 将参照“abcd”中的“c”)。  │

              如果 charIndex 小于 0     或大于等于字符串的长度则返回一个空串。                    │

       string is class ?-strict? ?-failindex varname? string                                      │
              如果   string   是指定字符类的一个有效成员则返回   1,否则返回        0。如果指定了 │
              -strict,则对一个空串返回     0,否则在任何类上对一个空串返回         1。如果指定了 │
              -failindex,则若函数返回 0,把字符串中类不再有效的地方的索引存储到叫做      varname │
              的变量中。如果函数返回 1则不设置 varname     。识别下列字符类(类的名字可以被缩写):  │

              alnum                                                                               │
                        任何 Unicode 字母或数字字符。                                             │

              alpha                                                                               │
                        任何 Unicode 字母字符。                                                   │

              ascii                                                                               │
                        值小于 \u0080 的任何字符(这是 7-bit ascii 的范围)。                       │

              booleanTcl_GetBoolean 所允许的任何形式。                                         │

              control                                                                             │
                        任何 Unicode 控制字符。                                                   │

              digit                                                                               │
                        任何 Unicode 数字字符。注意这包括在 [0-9] 范围外的字符。                  │

              double                                                                              │
                        双精度数在 Tcl  中的任何有效形式,可以有可选的围绕白空格。在值下溢/上溢的 │
                        情况下,返回 0 并且 varname 将包含 -1。                                   │

              falseTcl_GetBoolean 允许的任何形式,这里的值是假。                             │

              graph                                                                               │
                        除了空格之外的任何 Unicode 打印字符。                                     │

              integer                                                                             │
                        整数在 Tcl  中的任何有效形式,可以有可选的围绕白空格。在值下溢/上溢的情况 │
                        下,返回 0 并且 varname 将包含 -1。                                       │

              lower                                                                               │
                        任何 Unicode 小写字母字符。.                                              │

              print                                                                               │
                        包括空格在内的任何 Unicode 打印字符。                                     │

              punct                                                                               │
                        任何 Unicode 标点字符。                                                   │

              space                                                                               │
                        任何 Unicode 空格字符。                                                   │

              trueTcl_GetBoolean 所允许的任何形式,这里的值是真。                           │

              upper                                                                               │
                        在 Unicode 中的任何大写字符。                                             │

              wordchar                                                                            │
                        任何   Unicode  单字字符。它是任何字母字符和  Unicode   连接符标点字符(例 │
                        如,下划线)。                                                             │

              xdigit                                                                              │
                        任何十六进制数字字符 ([0-9A-Fa-f]).                                       │

              在 booleantruefalse 的情况下,如果函数将返回 0,则 varname 总是被设置为 0,原 │
              因是一个有效 boolean 值有多种本地(表示)。                                           │

       string last string1 string2 ?startIndex?                                                   │
              在   string2  中查找精确的匹配在  string1  中的字符的一个字符序列。如果找到,返回在
              string2 中最后一个这样的匹配的第一个字符的索引。如果没有匹配,则返回     -1。  如果 │
              指定了  startIndex(以可被 index     方法接受的任何形式), 则查找只针对 string2 中用 │
              startIndex     指定的和此前的字符。例如,                                           │
                     string last a 0a23456789abcdef 15                                            │
              将返回 10, 而                                                                       │
                     string last a 0a23456789abcdef 9                                             │
              将返回 1.                                                                           │

       string length string
              返回一个十进制字符串,给出在 string  中字符的数目。注意这不是必须与用于存储这个字符
              串的字节的数目相同。                                                                │

       string map ?-nocase? charMap string                                                        │
              基于在  charMap  中的键-值对替代  string     中的字符。charMap 是形如 key value keyvalue ...  的一个列表,同于从 array get  返回的那种形式。在字符串中这些键的每个实例 │
              将被替代为相应的值。如果指定了  -nocase,则进行匹配时不区别大小写。keyvalue  二 │
              者都可以是多字节的。以一种有次序的方式进行替代,所以在列表中出现在最前面的键将被首  │
              先检查,以此类推。string  只被重复操作(iterate)一次,所以早先的键替代将不影响以后的 │
              键匹配。例如,                                                                      │
                     string map {abc 1 ab 2 a 3 1 0} 1abcaababcabababc                            │
              将返回字符串 01321221.                                                              │

       string match ?-nocase? pattern string                                                      │
              查看 pattern 是否匹配 string;如果是则返回 1,不是则返回 0。 如果指定了 -nocase,则 │
              针对字符串的模式匹配采用大小写不敏感的方式。   对于要进行匹配的这两个字符串,除了在
              pattern 中可以出现的下列特殊序列之外它们的内容必须相同:

              *         匹配 string 中任何字符的一个序列,包括一个空字符。

              ?         匹配 string 中的一个单一字符。

              [chars]   匹配在用 chars 给出的集合中的任何字符。如果在 chars 中出现一个形式是  x-y
                        的一个序列,则匹配在  xy,之间的任何字符,包括二者。 当与 -nocase 一起 │
                        使用的时候,范围的端点首先被转换为小写。所以在大小写敏感匹配时 {[A-z]} 匹 │
                        配‘_’(‘_’位于‘Z’和‘a’之间),加上  -nocase 则将被象 {[A-Za-z]} 那样对待(并 │
                        可能是前者的真实意图)。

              \x        匹配单一字符 x。这提供了一种方式避免在 pattern  中对字符  *?[]\  做特殊解
                        释。

       string range string first laststring 返回一个范围的连续字符,从索引是 first 的字符开始并结束于索引是 last 的字
              符。 索引 0 参照字符串的 第一个字符。可以按 index 方法的方式指定 firstlast  。 │
              如果  first  小于零,则把它作为零对待,而如果 last 大于等于字符串的长度,则把它作为
              end 对待。如果 first 大于 last 则返回空串。                                         │

       string repeat string count                                                                 │
              把 string 重复 count 次后返回。                                                     │

       string replace string first last ?newstring?                                               │
              从 string 删除一个范围的连续字符,范围从索引是 first  的字符开始并结束于索引是 last │
              的字符。索引 0     参照字符串的第一个字符。可以按 index     方法的方式指定 first 和 │
              last 。如果指定了 newstring     ,则把它放置在删除的字符范围中。如果 first     小于 │
              零,则把它作为零对待,而如果 last     大于等于字符串的长度,则把它作为 end 对待。如 │
              果 first     大于 last 或最初的字符串的长度 ,或者 last     小于  0,则不做变动的返 │
              回最初的字符串。                                                                    │

       string tolower string ?first? ?last?                                                       │
              返回一个等同于     string    的值,但所有大写(或标题)字母都被转换为小写。如果指定了 │
              first,则它参照字符串中开始修改的第一个字符的索引。如果指定了      last,则它参照字 │
              符串中修改停止到(包括它)的那个字符的索引。按       index  方法的方式指定  first  和 │
              last。                                                                              │

       string totitle string ?first? ?last?                                                       │
              返回等同于 string 的一个值,但把 string     的第一个字符转换成它的 Unicode 标题大写 │
              变体(如果没有标题大写变体则为大写)而把字符串的其余部分转换成小写。如果指定了        │
              first,则它参照字符串中开始修改的第一个字符的索引。如果指定了      last,则它参照字 │
              符串中修改停止到(包括它)的那个字符的索引。按       index  方法的方式指定  first  和 │
              last。                                                                              │

       string toupper string ?first? ?last?                                                       │
              返回一个等同于    string     的值,但所有小写(或标题)字母都被转换为大写。如果指定了 │
              first,则它参照字符串中开始修改的第一个字符的索引。如果指定了      last,则它参照字 │
              符串中修改停止到(包括它)的那个字符的索引。按      index  方法的方式指定  first   和 │
              laststring trim string ?chars?
              返回一个等同于 string     的值,但删除了任何前导或尾随的用 chars     给出的字符集合
              中字符。如果未指定 chars     则删除白空格(空格、tab、换行、回车)。

       string trimleft string ?chars?
              返回一个等同于 string     的值,但删除了任何前导的用  chars      给出的字符集合中字
              符。如果未指定 chars     则删除白空格(空格、tab、换行、回车)。

       string trimright string ?chars?
              返回一个等同于  string      的值,但删除了任何尾随的用 chars     给出的字符集合中字
              符。如果未指定 chars     则删除白空格(空格、tab、换行、回车)。                      │

       string wordend string charIndex                                                            │
              返回包含 string 的第 charIndex     个字符的那个字最后的字符后面的那个字符的索引。按 │
              index      方法的方式指定 charIndex     。一个字被认为是任何连续范围的 alphanumeric │
              (Unicode 字母或十进制数字)或下划线(Unicode  连接符标点)字符,或除了这些之外的任何单 │
              一字符。                                                                            │

       string wordstart string charIndex                                                          │
              返回包含 string 的第 charIndex 个字符的那个字的第一个字符的索引。按 index  方法的方 │
              式指定 charIndex 。一个字被认为是任何连续范围的 alphanumeric (Unicode  字母或十进制 │
              数字)或下划线(Unicode 连接符标点)字符,或除了这些之外的任何单一字符。

参见 SEE ALSO

       expr(n), list(n)

关键字 KEYWORDS

       case conversion, compare, index, match, pattern, string, word, equal, ctype

[中文版维护人]

       寒蝉退士

[中文版最新更新]

       2001/11/15

《中国 Linux 论坛 man 手册页翻译计划》:

       http://cmpp.linuxforum.net