TCL語言筆記:TCL中的String命令

一、介紹

? 字符串是 Tcl 中的基本數據類型,所以有大量的字符串操作命令。一個比較重要的問題就是模式匹配,通過模式匹配將字符串與指定的模式(格式)相匹配來進行字符串的比較、搜索等操作。

二、string命令列表

命???? 令

說????? 明

string bytelength str

返回用于存儲字符串的字節數。

string compare ?-nocase? ?-

length len? str1 str2

根據詞典順序比較字符串。-nocase 選項表示大小寫無關。-length 選項表示只比較指定長度的開頭部分字符。如果字符串相同就返回

0(str1=str2),如果 str1 的順序比 str2 靠前就返回-1(str1<str2),其他情況返回 1(str1>str2)。

string equal ?-nocase? str1 str2

比較字符串,相同返回 1,否則返回 0。

string first str1 str2

返回在 str2 中 str1 第一次出現的索引位置,如果沒有找到則返回-1

string index str index

返回指定位置的字符。index 號從 0 開始。如果 index 為 end 則返回最后一個字符。

string is class?-strict? ?-failindex varname? str

判斷字符串的類型,如果是指定類型就返回 1。字符類型例如有整型、

布爾型等等。如果使用了-strict 則表示不匹配空字符,否則總是匹配的。如果指定了 failindex 則將 string 中非 class 的字符索引賦給 varname 變量。詳細的字符類見后面的介紹(表 4-7)。

string last str1 str2

返回 str2 在 str1 最后一次出現的位置索引。沒有搜索到就返回-1。

string length str

返回 str 中的字符個數

string map ?-nocase? charMap str

返回根據 charMap 中輸入、輸出列表將 str 中的字符進行映射后而產生的新字符串。參見本節“字符串映射”部分。

string match pattern str ?

如果 str 匹配 pattern 就返回 1,否則返回 0。使用的是通配風格的匹配。參見本節的“字符串的匹配”部分。

string range str index1 index2

返回 str 中從 index1 到 index2 之間的字符串。

string repeat str count

返回將 str 重復 count 次的字符串。

string replace str first last ?newstr?

將從 first 開始到 last 結束的一段字符串替換為 newstr 字符串。如果 newstr 沒有,則這部分字符串內容會被刪除。

string tolower str ?first? ?last?

將指定范圍的字符轉化為小寫格式。

string totile str ?first? ?last?

通過將第一個字符替換為 Unicode 的標題型字符或大寫形式,而其余的替換為小寫形式的方法將 str 轉換為開始字母大寫形式。可以用參數指定操作范圍。

string ???? toupper string ?first? ?last?

將指定范圍的字符轉化為大寫形式。

string trim str ?chars?

從 str 兩端刪除 chars 中指定的字符。chars 默認為空字符。

string trimleft str ?chars?

從 str 開頭刪除 chars 中指定的字符。chars 默認為空字符。

string trimright str ?chars?

從 str 結尾刪除 chars 中指定的字符。chars 默認為空字符。

string wordend str index

返回 str 中在索引位置 index 包含字符的單詞之后的字符的索引位置。

string wordstart str index

返回 str 中在索引位置 index 包含字符的單詞中第一個字符的索引位置。

說明: 命令中的兩個問號之間的內容是任選項,表示根據實際需要可選的內容。字符串的這些命令的使用方法比較相似。常用的字符串操作有:

-??? string match:字符串匹配(或者比較);

-??? 大小寫轉換:tolower 和 totopper 以及 totile;

-??? equal 操作;

-??? string compare;

-??? string range;

-??? string replace 等。

?

轉載于:https://www.cnblogs.com/huguodong/p/5886001.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/254411.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254411.shtml
英文地址,請注明出處:http://en.pswp.cn/news/254411.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

一文學會,膠位偏移、缺膠、斷膠、溢膠檢測

文章目錄檢測任務檢測思路點膠質量檢測代碼及解析圖示處理思路博主寫作不容易&#xff0c;孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 檢測任務 點膠檢查檢測以下缺陷&#xff1a; 1.缺少粘合膠的部分&#xff08;斷膠&#xff09; 2.粘合劑過多或過少的部分&#x…

『轉載』hadoop2.x常用端口、定義方法及默認端口

『轉載』hadoop2.x常用端口、定義方法及默認端口1.問題導讀 DataNode的http服務的端口、ipc服務的端口分別是哪個&#xff1f;NameNode的http服務的端口、ipc服務的端口分別是哪個&#xff1f;journalnode的http服務的端口、ipc服務的端口分別是哪個&#xff1f;ResourceManage…

宏定義和內聯函數的學習

宏定義可以提高效率&#xff0c;但是宏不是函數。 預編譯通過代碼復制的方式代替函數調用&#xff0c;省去了諸如函數壓棧等系統過程&#xff0c;從而提高了效率。但是由于宏定義僅僅是代碼替換&#xff0c;所以引起很多問題。#define MAX(a&#xff0c;b) (a) > (b) ? (…

HAProxy介紹及配置文件詳解

一、HAProxy簡介 HAProxy是一個開源的、高性能的、基于TCP和HTTP應用的負載均衡軟件&#xff0c;借助HAProxy可快速、可靠地提供基于TCP和HTTP應用的負載均衡解決方案 二、HAProxy優點 1) 可靠性和穩定性非常好&#xff0c;可以與硬件的F5相媲美2) 最高可以同時維護40000--5000…

unbutu安裝搜狗輸入法【轉載】

安裝支持庫 sudo apt-get install fcitx libssh2-1 如果安裝過程中出現錯誤失敗&#xff0c;運行apt-get -f install 查看支持庫是否安裝成功 dpkg -l | grep fcitx dpkg -l | grep libssh 下載搜狗輸入法 wget "http://pinyin.sogou.com/linux/download.php?flinux&…

深入理解halcon相機標定

目錄相機標定簡介深度說明1、相機標定參數介紹2、標定板詳細介紹問題1&#xff1a;halcon是否只能使用halcon專用的標定板&#xff1f;問題2&#xff1a;halcon標定板如何生成&#xff1f;問題3&#xff1a;halcon標定板如何擺放&#xff0c;拍照數量有無限制&#xff1f;標定步…

halcon模板匹配干擾邊緣消除辦法(最硬核方式)

目錄halcon手繪形狀匹配模板手繪形狀匹配模板主要算子解析draw_nurbs 繪制平滑曲線參數解釋create_shape_model_xld 使用XLD輪廓創建模板參數解釋實例演示與解析實例代碼展示與解析運行過程與處理展示讀入圖像繪制模板使用繪制的XLD創建模板查找模板博主寫作不容易&#xff0c;…

往文件中寫數據--增量

有的功能需要打印日志文件&#xff0c;但是日志文件太多不方便查看&#xff0c;我就把信息輸出到一個TXT文件中了。 下面就是我將要說的&#xff0c;往文件中寫數據&#xff08;增量&#xff09;&#xff0c;代碼很簡單&#xff0c;也可以放在你的代碼中運行一下&#xff1a; /…

SQL Server 數據庫查找重復記錄的幾種方法

http://www.hanyu123.cn/html/c61/6790.html 一、查某一列&#xff08;或多列&#xff09;的重復值。&#xff08;只可以查出重復記錄的值&#xff0c;不能查出整個記錄的信息&#xff09; 例如:查找stuid&#xff0c;stuname重復的記錄&#xff1a; select stuid&#xff0c;s…

xvid 數據編碼和解碼

由于視頻開發的需求&#xff0c;封裝xvid c調用接口&#xff0c;使之優雅易用 我已經對pc camera視頻流(RGB)進行嘗試&#xff0c;編碼之后傳輸到遠程主機進行解碼回放&#xff0c;效果不錯 具體的xvid的參數可以進一步優化&#xff0c;這里只是提供簡單的范例 1. xvid 解碼 …

第一個PowerShell腳本——PowerShell三分鐘(九)

前面把基礎知識講了一遍&#xff0c;現在我們開始寫一個最初級的腳本寫腳本的工具有很多&#xff0c;有文本文檔&#xff0c;有PowerShell ISE&#xff0c;PowerShell Studio等&#xff0c;這里選用系統自帶的PowerShell ISE這里大家依然要記得以管理員身份運行&#xff0c;否則…

C#精準定時

文章目錄簡介StopWatch類例子1&#xff0c;用作延時例子2&#xff0c;用作算法耗時評估博主寫作不容易&#xff0c;孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 簡介 我們在自動化上位機編寫過程中&#xff0c;上位機的定時應用在很多地方。對于工業上位機程序設計起…

聯合體(union)和結構體(struct)的區別

1. 聯合說明和聯合變量定義 聯合也是一種新的數據類型, 它是一種特殊形式的變量。 聯合說明和聯合變量定義與結構十分相似。其形式為: union 聯合名{ 數據類型 成員名; 數據類型 成員名; ... } 聯合變量名; 聯合表示幾個變量公用一個內存位置, 在不同的時間保存不同…

MVC架構簡介及其測試策略

最近在WEB端測試工作中陷入了瓶頸&#xff0c;單純的手動功能測試在沒有成熟的代碼規范之前還是很容易坑的&#xff0c;WEB自動化測試一時半會還沒有什么進展&#xff0c;所以決定先學習一下網站用的MVC架構&#xff0c;跟著教程寫了一個小網站&#xff0c;大概也找到了WEB測試…

prototype與_proto_

1、prototype與_proto_ ①prototype&#xff1a;是函數才有的屬性&#xff0c;這個屬性是一個指針。當一個構造函數被創建時&#xff0c;該構造函數會自動生成一個prototype指針&#xff0c;該指針指向構造函數的原型。這個原型會有其他實例共享的一些屬性和方法。 ②_proto_&a…

Halcon求取矩形頂點坐標

文章目錄簡介Halcon源碼博主寫作不容易&#xff0c;孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 簡介 我們在使用Halcon畫矩形時&#xff0c;并不能得到矩形四角頂點坐標。但是我們可以通過數學計算得到矩形定點坐標的位置。 我們在計算過程中需要知道矩形的長軸與短…

kafka常用的shell命令

kafka常用shell命令&#xff1a; ------------------------------------ 1、創建topic bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test 2、查看創建的topic bin/kafka-topics.sh --list --zookeeper localhost:…

python+pycharm+Django報錯

報錯&#xff1a; Unhandled exception in thread started by <function wrapper at 0x2d7e410>Traceback (most recent call last):File "/root/virtual_dir/wxwebapp_court_nositepkg/lib/python2.7/site-packages/django/utils/autoreload.py", line 226, i…

C++多線程實例(_beginThreadex創建多線程)

C多線程&#xff08;二&#xff09;(_beginThreadex創建多線程) C/C Runtime 多線程函數一 簡單實例&#xff08;來自codeprojct&#xff1a;http://www.codeproject.com/useritems/MultithreadingTutorial.asp&#xff09; 主線程創建2個線程t1和t2&#xff0c;創建時2個線程…

halcon求取區域頂點

文章目錄簡介Halcon源代碼處理效果博主寫作不容易&#xff0c;孩子需要您鼓勵 萬水千山總是情 , 先點個贊行不行 簡介 使用halcon求取頂點的方法。 Halcon源代碼 read_image (Image1, 1.png)points_foerstner (Image1, 1, 2, 3, 200, 0.3, gauss, false, RowJunctions, …