0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Cコード解析】switchの空のdefaultにコメントを入れる

Posted at

引き続き静的解析ツールの指摘を自動で対処するスクリプトを考える。
今回はswitchdefaultが処理なし(;のみ)の場合はコメントで置き換えるスクリプトを作成する。

処理がないdefaultケースの";"にマッチさせる

下記の正規表現でマッチできる。後読み肯定を使ってdefault:の後の;にマッチさせる。

(?<=default\s*:\s*);

マッチした";"をコメントで置換する

regex.subを使って置換すればOK。今回はシンプルに解決できた!

import regex

with open("test.c", "r", encoding="utf-8") as file_obj:
	codetext = file_obj.read()

	ret = regex.sub(r"(?<=default\s*:\s*);", "/* 処理なし */", codetext, flags=regex.DOTALL)
	print(ret)

まとめ

静的解析ツールの「defaultに処理がないよ!」という指摘はコメントを追加することで回避できるっぽい。(結局、コメントしかないなら処理がないことに変わりないのでは...?と思うが、まぁ指摘が出なくなるのであれば良しとしよう)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?