をチェックするために正規表現を思い付くしようとしていますI次の文字列があります-stage=build
をとのバリエーションが存在します。このような:私は、特定の文字列レイアウト
-task=do
、-command=ls\-ltra
、-working-directory=\path\to\my\folder
など
だから私は上記の例に示すように特定のフォーメーションに対して文字列をチェックできるようになる正規表現を考案しようとしています。これは私がこれまでに得たものである
:-stage=hello\rtgh
は、しかし、私は\
後の継続に問題がありますのようなものをキャプチャすることができるように思わ^-\w+=[A-Za-z]+\\+[A-Za-z]
。私はtgh
ビットを検出することができません。正規表現を改善するにはどうすればよいですか?一般的には
パターンは次のとおりです。
-(letters with no space)-(letters with no space)=(any letters, numbers, * etc and a literal escape to escape spaces)
多分['^ - [A-Za-z] +(?: - [A-Za-z] +)?= [^ \ s \\] *(? s \\] *)* $ '](https://regex101.com/r/6xYdC3/1)? –
ありがとうございます。作品。私はこれがどのように構築されるのか見ていきます。最後の質問ですが、通常、特定の文字を禁止するにはどうすればよいのですか?たとえば、 '-'を禁止する必要がある場合、' '-stage.a = banana''を無効にしますか? – symbolix
上記の正規表現が動作する場合、あなたの質問は明確ではありません:文字列中のバックスラッシュがエスケープシーケンスを構成するように指定してください(バックスラッシュは二重バックスラッシュで、 '-working-directory = \ path \ to \ my \ folder 'は実際には' -working-directory = \\ path \\ to \\ my \\ folder'でなければなりません)。とにかくその位置にドットがマッチしないので、ドットを除外する必要はありません。 –