0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

學習Tcl來這里:字符串匹配

電子工程師 ? 來源:未知 ? 作者:李倩 ? 2018-09-21 11:14 ? 次閱讀

所謂字符串匹配是指檢測待測字符串(也可稱為目標字符串)是否與給定的模式相匹配。這里的模式其實也是字符串。Tcl提供了兩種字符串匹配方法:一種為通配符模式,一種為正則表達式。這里先介紹較為簡單易用的通配符匹配模式。這時要用到命令string match。該命令需要接受兩個參數,一個是匹配模式,一個是待測字符串。若兩者匹配則返回1,否則返回0。string match可支持的模式如下圖所示。

案例1:使用*匹配

案例2:使用?匹配

這里可以看到如果需要匹配兩個字符,就要使用兩個?,即代碼種的“??”。

案例3:使用[]匹配

案例4:較為復雜的[]匹配

這里可以看到[a-z0-9]和[a-z][0-9]是不同的,前者匹配一個字符,后者匹配兩個字符,其種一個為字母,另一個為數字,所以字符串9s與[a-z0-9]*匹配,但與[a-z][0-9]*不匹配。這里模式字符串要用花括號{}括起來,否則Tcl解釋器看到[]會認為是嵌套命令,從而報錯。

案例5:匹配特殊字符

案例6:較為復雜的特殊字符匹配

這里通過匹配特殊字符[],通過[0-9]匹配數字。

也可以把模式字符串設置為變量。此時如果使用了[]匹配,一定要用{}以阻止命令置換。

string match還有提供了選項-nocase,指定匹配時不區(qū)分大小寫。

結論:

-string match用于字符串匹配,可提供* ? [] 四種匹配模式

-最好用花括號{}把模式字符串括起來

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • TCL
    TCL
    +關注

    關注

    10

    文章

    1712

    瀏覽量

    88405
  • 字符串
    +關注

    關注

    1

    文章

    575

    瀏覽量

    20468

原文標題:Tcl的字符串操作:字符串匹配

文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    字符串函數測試學習工程

    字符串函數測試學習工程
    發(fā)表于 07-01 16:38 ?6次下載

    字符字符串的顯示原理

    字符字符串的顯示原理     1.字符的表示方法    現代計算機不僅處理數值領域的問題,而且處理大量非數值領域的問題。這樣一,必然要
    發(fā)表于 04-13 11:38 ?9967次閱讀

    Tcl學習之如何獲取字符

    Tcl中并不需要顯示地指定變量的數據類型,因為Tcl本身將所有的變量值視為字符串,并將他們作為字符串保存,可見,
    的頭像 發(fā)表于 09-23 10:12 ?4980次閱讀

    C語言字符串匹配和數據提取源碼

    C語言字符串匹配與數據提取源碼
    的頭像 發(fā)表于 02-27 15:42 ?2343次閱讀
    C語言<b class='flag-5'>字符串</b><b class='flag-5'>匹配</b>和數據提取源碼

    LabVIEW的常用字符串操作教程免費下載

    。主要包括常用工具字符串函數、字符串常量、字符串/數值轉換、字符串/數組/路徑轉換和附加字符串函數本文主要講替換和
    發(fā)表于 08-21 14:51 ?25次下載
    LabVIEW的常用<b class='flag-5'>字符串</b>操作教程免費下載

    什么是復制字符串?Python如何復制字符串

    連續(xù)幾篇文章都在寫 Python 字符串,這出乎我的意料了。但是,有的問題,不寫不行,特別是那種靈機一動想到的問題,最后你發(fā)現,很多人根本不懂卻又誤以為自己懂了。那就繼續(xù)刨根問底,探究個明白吧
    發(fā)表于 11-25 10:32 ?2978次閱讀

    2.2 python字符串類型

    2.2 python字符串類型 1. 如何定義字符串字符串是Python中最常用的數據類型之一。 使用單引號或雙引號創(chuàng)建字符串,使用三
    的頭像 發(fā)表于 02-17 17:08 ?1391次閱讀

    字符串操作

    labview字符串操作
    發(fā)表于 06-28 15:09 ?2次下載

    平化字符串處理方法簡介

    這里介紹一組有用的字符串處理方法,即平化至字符串和從字符串還原。
    的頭像 發(fā)表于 09-26 10:20 ?2210次閱讀

    python字符串有哪些特定方法

    python字符串序列操作也適用于列表和元組。 python字符串還有獨有方法,即字符串對象的函數,其他對象不可調用,只有字符串對象可調用。
    的頭像 發(fā)表于 02-23 15:02 ?657次閱讀

    淺析python字符串模式匹配

    python字符串可以通過re模塊的模式匹配來處理文本。
    的頭像 發(fā)表于 02-23 15:04 ?2287次閱讀

    字符串的相關知識

    TCL 中的數據類型只有一種:字符串。這些字符串可以是字母、數字、布爾值、標點符號等特殊字符的組合。在某些特殊命令的作用下,字符串可以向其他
    的頭像 發(fā)表于 03-29 11:41 ?1070次閱讀

    mysql字符串包含某個字符串

    將詳盡、詳實、細致地探討MySQL中字符串包含的實現方法。 在MySQL中,可以通過使用內建函數和通配符實現字符串包含的操作。下面將詳細介紹幾種常用的方法: 使用LIKE通配符: LIKE是MySQL中用于模式
    的頭像 發(fā)表于 11-16 14:52 ?3570次閱讀

    c語言字符串定義

    字符串的定義、初始化、操作和常見問題。 字符串的定義和初始化 在C語言中,字符串被定義為一個字符數組??梢酝ㄟ^兩種方式定義和初始化
    的頭像 發(fā)表于 11-24 10:02 ?1740次閱讀

    labview字符串如何轉換為16進制字符串

    在LabVIEW中,將字符串轉換為16進制字符串是一個常見的需求,尤其是在處理數據通信和硬件接口時。LabVIEW提供了多種方法實現這一轉換,包括使用內置函數、編寫VI(Virtual
    的頭像 發(fā)表于 09-04 15:54 ?1498次閱讀