• ベストアンサー

正規表現の検索について

正規表現で以下をさがしたいのですが・・・ Cの配列要素を指定している行(a[i+j]みたいなものを含んでいるやつ) や、Cのコメントの始まりの行(//あるいは/*) 、Perlのコメントを含まない行(#を含んでいない行) 、Cの変数宣言らしい行(int, char, float, doubleのいずれかを含んでいる. 構造体は無視)はどのようにしたらいいでしょうか。基本的にAを含むなどの検索はできるのでですが、これらは浮かばなくて。。。 誰か教えてくださいませ(><)

質問者が選んだベストアンサー

  • ベストアンサー
noname#25358
noname#25358
回答No.2

 補足見ました。  えとですね。 配列要素を含む行   \w+\[\w+\] Cのコメント始まり   (\/\/|\/\*) Cの変数宣言行   (int|char|float|double)  こんな感じでしょうかね。  ちなみに Perl は言語の特性上、「コメントを含まない行」を探すのはすごく難しいです。  単純なものでよければ、   ^[^#]*$  これでできますが、これだとおそらく、余計なのまで色々省かれてしまいます。

saranpopo
質問者

お礼

ありがとうございます!!!!今回教えていただいた回答を参考に勉強していこうとおもいます!!!まだまだ初心者ですが頑張ります!!!

その他の回答 (1)

noname#25358
noname#25358
回答No.1

 補足お願いします。 1.これらをいっぺんにやろうとすると、巧く動かないケースが出てきそうな気がします。  1つずつ順番にやるのは駄目ですか?(それでもかなり複雑なものになりそうな気がしますが) 2.んで、正規表現を探したとして、何に使うのでしょうか?  正規表現の勉強でもやってらっしゃるのでしょうか。(何に使うかによっても答えが変わってくるので)

saranpopo
質問者

補足

これに今使いたいから!というわけではなく、こういった場合どのように検索したらよいのだろうと思い質問しました。最終的には長いプログラミングをくむ場合に直す箇所を一気に探して置換したりできるようになりたいです。。。まだ初心者ですが。。 質問の方は、いっぺんにではなく個々に考えいました。まだ置換の方もかじったばかりです。。

関連するQ&A

専門家に質問してみよう