2017-07-07 13 views
0

以下はproject.jsonファイルの内容です。私は置き換えられる 'バージョン'値の最初の発生をしたい。最初のマッチだけをgulp-regex-replaceする方法はありますか?

{ 
    "title": "Project Title", 
    "copyright": "Copyright Info", 
    "description": "Project Description", 
    "version": "1.0.0", 
    "buildOptions": { 
    "xmlDoc": true 
    }, 
    "dependencies": { 
    "Microsoft.NETCore.App": { 
     "version": "1.0.1", 
     "type": "platform" 
    } 
    } 
} 

gulp-regex-replaceを使用する以下のコードは、バージョン値のすべての発生を1.0.1に変更します。

var targetVersion= "1.0.1"; 
gulp.task('replace', function() { 
    return gulp.src(['./src/**/project.json']) 
     .pipe(bom()) 
     .pipe(replace({ regex: '\\n\\s\\s\\"version\\"\\:\\s\\"([0-9a-zA-Z.-]+)\\"', replace: `${targetVersion}` })) 
     .pipe(gulp.dest('./src')); 
}); 

このコードを最初のバージョンの値に置き換えるにはどうすればよいですか?別の同様のプラグインgulp-replaceは、カスタムの正規表現オブジェクト受け付け https://github.com/mikrofusion/gulp-regex-replace/blob/master/index.js#L31

答えて

1

gulp-regex-replaceプラグインがグローバルに一致したものを使用したパターンでg修飾子なしで

replace(/__your_pattern__/, targetVersion); 

を、JSは、最初の発生と一致します。

関連する問題