DOBON.NET DOBON.NETプログラミング掲示板過去ログ

指定文字列抜き出し

環境/言語:[XP C# )、.NET Framework1.1]
分類:[.NET]

お世話になっています。
ex) 変数sHENSU = "select ACULUMN,BCULUMN from X_TABLE where ACULUMN = aaa";
上記の変数sHENSUに格納されている値から、文字列"where"のみを抜き出したいのですが、
どのように行えばいいんでしょうか。
FreamWork2.0?では実現できるメソッドがあるようなんですが、今の環境(1.1)では
ないようで・・・。
どなたか教えてください。
よろしくお願いします。
>上記の変数sHENSUに格納されている値から、文字列"where"のみを抜き出したいのですが、
>どのように行えばいいんでしょうか。
えっ?
whereだけでいいの?
だったら、文字列中に "where" があるか判定するだけでいいような。
where以降を取得したい場合も同じように切り出せると思うけど。


もっとも、高度のことをやりたいのであれば正規表現クラスを使ったほうがいいですが。(1.1にもあるはず)
よく質問読んだら、

"select ACULUMN,BCULUMN from X_TABLE where ACULUMN = aaa"



"select ACULUMN,BCULUMN from X_TABLE ACULUMN = aaa"

にしたいとも取れるかも。
Blueさん、さっそくありがとうございます。
文字列"where"の有無を確認したい、という意味です。
判定したいというのはよくわかるのですが、
そのやり方がIndexOf、IndexOfAnyでいいのか、
その辺もわからず・・・といった具合です。


■No17523に返信(Blueさんの記事)
> よく質問読んだら、
>
> "select ACULUMN,BCULUMN from X_TABLE where ACULUMN = aaa"
>
> を
>
> "select ACULUMN,BCULUMN from X_TABLE ACULUMN = aaa"
>
> にしたいとも取れるかも。
>
2006/09/11(Mon) 15:52:53 編集(投稿者)

>文字列"where"の有無を確認したい、という意味です。
でしたら、IndexOf でいいと思いますよ。
(C#2.0なら Containsメソッドでも出来ますけどね。)
参考
http://jeanne.wankuma.com/tips/string/indexof.html

ただ、wherer とか awhere とかは除外したい場合は前後の文字もチェックする必要があるかもしれません。
('の中(文字列リテラル中)のwhereは無視したいとなると正規表現使ったほうがいいかも)
大文字小文字とか

DOBON.NET | プログラミング道 | プログラミング掲示板