
No.1ベストアンサー
- 回答日時:
$tclsh
% set str {gasgsagsdagaromdfgagasdfgf}
gasgsagsdagaromdfgagasdfgf
% set flag 0
0
% echo $flag
0
% set flag [ regexp "rom" $str ]
1
% echo $flag
1
「配列」がTclでいうところの array なのか list なのか
わかりませんが、
ある文字列を含むかどうかは上のような判定ができます。
しかしTclとはどマイナーなものが。
この回答への補足
ご回答ありがとうございます。
配列はarrayです。
string first $rom $*******rom*****
という書き方はだめですか?
[get_arry Table:element name]
のelement nameに*******rom*****が入っています。
いかがでしょうか?
自分なりに
書いてみました。
set elem_name_len [string fist rom [get_arry Table::elem name]
if {$elem_name_len > 0}{
set flag 1
} else {
set flag 0
}
はいかがでしょうか?
あっていたら、ありがとうございます。
No.3
- 回答日時:
regexp を使った正規表現マッチングだと、
たとえば
regexp "roo?m" $str
とすると、rom か room を含んでいるかどうかという
判定が可能ですが、
string firstではこれはできません。
今回検索すべきものは複雑なパターンではなく単純な文字列なので、
string first でも問題ないし、逆に固定文字列を
検索するための最適化が行われていることも
期待できるので、速度的には有利だろうということです。
string first だと、メタ文字も単なる普通の文字と
見なすだけの話ですので上述のような複雑(かもしれない)パターンで
検索するのでなければ気にすることはありません。
逆にそのようなパターンを探すのにはstringは使えません。
大変ありがとうございました。
TCLをいろいろ見てると、Cより簡単な面もあるけど
正規表現とか、複雑ですね。
とても勉強になりました。
No.2
- 回答日時:
array/list の要素をすべて舐めていくかと思ったのですがちがったのですか。
正規表現マッチングだと結果が 0/1になるので#1の回答で使いましたが、
自分で1/0を設定するからどう言う値でも良いということなら、
string first のほうが良いと思います。
正規表現のメタ文字がないのに正規表現マッチングをするよりは単純に
検索したほうが多少は早いでしょうし。
この回答への補足
ご回答ありがとうございます。
さっそく本日WSにてやってみます。
>正規表現マッチングだと結果が 0/1になるので#1の回答で使いましたが、
>正規表現のメタ文字がないのに正規表現マッチングをするよりは単純に検索したほうが多少は早いでしょうし。
この表現私にとって理解不能な言葉なので、噛み砕いて説明していただくと助かります。
おはようございます
. ^ $ [ ] * + ? | ( )
がメタ文字で、正規表現では
このれらの文字の前にに¥を付けないといけない事がわかりました。
stringではメタ文字は対応しませんか?
そうすると#1の書き方の方がベストでしょうか?
1/0の設定は自分でかけます。
ご指導お願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) 2つのテキストファイルを比べて文字列を特定する方法を教えて下さい 5 2022/05/01 15:22
- Visual Basic(VBA) VBA初心者です 検索した数字の行に色をつける 5 2023/02/13 14:22
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- WordPress(ワードプレス) Wordpressの記事URLを自由に決めたい 3 2022/06/02 12:05
- その他(プログラミング・Web制作) 変換のプログラムを教えてください。 6 2023/07/01 09:57
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- Excel(エクセル) Excelの列から検索して該当する行を別シートに転記するVBA 2 2022/12/20 09:35
- その他(コンピューター・テクノロジー) googleスプレッドシートでカッコ内の文字数をカウントしたい 1 2023/01/17 15:52
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラム問題・・・
-
sprintf関数での文字列変換につ...
-
バイナリファイル中の日本語文...
-
人の書いたc言語のプログラムで...
-
nullと""、\\0とEOFの違いにつ...
-
16進数を2文字ずつ配列に格納し...
-
C++で入力した文字列から数字を...
-
WSH(VBS)でJSONの文字列を読み...
-
C言語の問題です。
-
CSVファイルの「”」について
-
構造体→文字列→構造体 をする方法
-
C言語の勉強しています。すみま...
-
for文での配列の指定について(...
-
X='A'とX="A"の違いは
-
アルファベットをカウント、
-
VB6.0でのバイナリデータの扱い...
-
CStringからchar*への型変換に...
-
Integer変数をカラにしたいので...
-
プログラムについて
-
VBA基本構文の作り方 2列の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TCL言語で文字列検索方法を教え...
-
C#でstringをポインタとして渡す
-
C++で入力した文字列から数字を...
-
nullと""、\\0とEOFの違いにつ...
-
c#で他のアプリの文字入力フォ...
-
WSH(VBS)でJSONの文字列を読み...
-
バイナリファイル中の日本語文...
-
シリアル通信で0x00を送信した...
-
%dなどの違い
-
16進数を2文字ずつ配列に格納し...
-
VB6.0でのバイナリデータの扱い...
-
C++で文字列の右端から特定の文...
-
構造体→文字列→構造体 をする方法
-
_tcscpy_s(wcscpy_s)の第二引数...
-
char型配列の最大要素数
-
VBA-DLLの引数受け渡しについて
-
binaryに対して正規表現を適用...
-
数字の入った配列をファイルへ...
-
C言語の課題で困っています;
-
プログラムによく出てくるst...
おすすめ情報