これが私のサンプル文字列です。
[echo] 現在、SampleProject ソリューションのコード カバレッジは 85% です。
私の望む出力はそうあるべきです。
現在、SampleProject ソリューションのコード カバレッジは 85% です。
ところで、Jenkinsを使用してCIのログを取得しているため、これを取得しました。
何か助けはありますか?ありがとう..
これが私のサンプル文字列です。
[echo] 現在、SampleProject ソリューションのコード カバレッジは 85% です。
私の望む出力はそうあるべきです。
現在、SampleProject ソリューションのコード カバレッジは 85% です。
ところで、Jenkinsを使用してCIのログを取得しているため、これを取得しました。
何か助けはありますか?ありがとう..
トークンでsubstText
パラメーターを試して、一致するテキストを置き換えることができますBUILD_LOG_REGEX
regex
新しいオプションの引数: ${BUILD_LOG_REGEX, regex, linesBefore, linesAfter, maxMatches, showTruncatedLines, substText } これにより、一致した正規表現をテキストに置き換えることができます。これは、テキストにキャプチャ グループ ($1、$2 など) への参照が含まれている場合に特に便利です。
以下を使用すると、すべてのログからプレフィックス [echo] が削除されます。
${BUILD_LOG_REGEX, regex="^\[echo] (.*)$", maxMatches=0, showTruncatedLines=false, substText="$1"}
\[[^\]]*\]
削除するビットと一致します。文字列置換関数を使用して、そのビットを空の文字列に置き換えるだけです。
Andrew は正しい考えを持っていますが、Perl スタイルの正規表現構文 (Java の組み込み正規表現エンジンを含む) を使用すると、さらに優れたことができます。
str.replaceAll("\\[.*?\\]", "");
(つまり、マッチング式 を使用します\[.*?\]
。?
は最小限の一致を指定するため、最初に]
見つかった時点でマッチングを終了します。)