私はよく bash スクリプトで grep と sed を使用します。たとえば、スクリプトを使用してテンプレートからコメントを削除します
この例では、コメントは次のようになります。
/*# my comments contain text and ascii art:
*#
*# [box1] ------> [box2]o
*#
#*/
これらの行を削除するための sed チェーンは次のようになります。
sed '/^\/\*#/d' | sed '/^\s*\*#/d' | sed '/^\s*#\*\//d'
私のスクリプトでは、\
やなどの文字をエスケープする必要があるため/
、コードが読みにくくなります。したがって、私の質問は次のとおりです。bash スクリプトで読みやすい正規表現を作成するにはどうすればよいですか?sed
私が考えることができる1つの方法は、の代わりに別のセパレーターを/
使用することです.vimのように、ネイティブに%s#search/text#replace/text#gc
(#
asセパレーターを使用して)使用できるため/
、エスケープされていない文字として許可されます。代替のエスケープ文字を定義することも役立ちます。この問題をどのように解決するかに興味があります。sed
単なる問題だと思われる場合に備えて、代替ツールも用意しています。