正規表現

Tclは、強力な正規表現を持っています。
正規表現を使えるコマンドは以下の通りです。

コマンド説明
regexp文字列のマッチング (regexpスタイル)
regsub文字列の置換 (regexpスタイル)
lsearch -regexp,-globリストの検索 (regexpまたはglobスタイル)
switch -regexp,-glob文字列の比較 (regexpまたはglobスタイル)
string match文字列のパターンマッチ (globスタイル)
textのsearch -regexpテキストの検索 (regexpスタイル)
namespace import,exportプロシジャのパターンマッチ (globスタイル?)
globファイル名のパターンマッチ (globスタイル)

正規表現には、globスタイルとregexpスタイルがあります。
コマンドによって、どちらのスタイルを使うか異なります。
両者の違いは以下の通りです。globは比較的シンプルです。

globスタイルregexpスタイル
? 1文字にマッチ
* 0文字以上の文字にマッチ
[chars] charsの文字にマッチ [a-z]などが使える
\x 文字xにマッチ
{a,b,...} a,b等文字列にマッチ
~ ホームディレクトリのパス
* 0文字以上の文字にマッチ
+ 1文字以上にマッチ
? 0または1文字にマッチ
. 1文字にマッチ
^ 行の先頭にマッチ
$ 行の最後にマッチ
[chars] charsの文字にマッチ [a-z]などが使える
\x 文字xにマッチ
{a,b,...} a,b等文字列にマッチ
exp1 | exp2 選択
( exp ) 部分パターン

その他省略