Provided by: manpages-zh_1.6.3.3-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 │
              方法的方式指定 firstlast。                                                      │

       string totitle string ?first? ?last?                                                       │
              返回等同於   string   的一個值,但把   string       的第一個字符轉換成它的  Unicode │
              標題大寫變體(如果沒有標題大寫變體則爲大寫)而把字符串的其餘部分轉換成小寫。如果指定了│
              first,則它參照字符串中開始修改的第一個字符的索引。如果指定了                       │
              last,則它參照字符串中修改停止到(包括它)的那個字符的索引。按                  index │
              方法的方式指定 firstlast。                                                      │

       string toupper string ?first? ?last?                                                       │
              返回一個等同於     string    的值,但所有小寫(或標題)字母都被轉換爲大寫。如果指定了 │
              first,則它參照字符串中開始修改的第一個字符的索引。如果指定了                       │
              last,則它參照字符串中修改停止到(包括它)的那個字符的索引。按                  index │
              方法的方式指定 firstlaststring 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

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh