2

これが私のサンプル文字列です。

[echo] 現在、SampleProject ソリューションのコード カバレッジは 85% です。

私の望む出力はそうあるべきです。

現在、SampleProject ソリューションのコード カバレッジは 85% です。

ところで、Jenkinsを使用してCIのログを取得しているため、これを取得しました。

何か助けはありますか?ありがとう..

4

4 に答える 4

5

トークンでsubstTextパラメーターを試して、一致するテキストを置き換えることができますBUILD_LOG_REGEXregex

新しいオプションの引数: ${BUILD_LOG_REGEX, regex, linesBefore, linesAfter, maxMatches, showTruncatedLines, substText } これにより、一致した正規表現をテキストに置き換えることができます。これは、テキストにキャプチャ グループ ($1、$2 など) への参照が含まれている場合に特に便利です。

于 2012-09-14T13:06:09.503 に答える
1

以下を使用すると、すべてのログからプレフィックス [echo] が削除されます。

${BUILD_LOG_REGEX, regex="^\[echo] (.*)$", maxMatches=0, showTruncatedLines=false, substText="$1"}

于 2019-03-01T15:03:12.650 に答える
0

\[[^\]]*\]削除するビットと一致します。文字列置換関数を使用して、そのビットを空の文字列に置き換えるだけです。

于 2012-09-14T03:46:56.260 に答える
-2

Andrew は正しい考えを持っていますが、Perl スタイルの正規表現構文 (Java の組み込み正規表現エンジンを含む) を使用すると、さらに優れたことができます。

str.replaceAll("\\[.*?\\]", "");

(つまり、マッチング式 を使用します\[.*?\]?は最小限の一致を指定するため、最初に]見つかった時点でマッチングを終了します。)

于 2012-09-14T03:50:52.543 に答える