2016-12-22 10 views
1

を解析:私は変数を持つ動的なサイズの文字列

set myvar="26:deployment.javaws.jre.0.product=1.8.0_111" 

私はJRE後の値を取得します。 .productは整数0になります。ここの値は常に整数です。変数can文字列はわずかに変更できますが、[jre。] [integer] [。product]の形式は常に同じです。このため、ハードコードされた値を使用して部分文字列を取得することはできません。文字列の先頭の最初の桁が2桁ではなく3桁であると、文字列は毎回異なる可能性があります。これどうやってするの?

答えて

1
for /f "tokens=5 delims=:." %%a in ("%myvar%") do echo -%%a- 

jre.部分の前にドット(とコロン)の数は変更になる場合があります場合は、この

+0

、感謝を! – user4264164

3

を試してみてください、あなたはこの使用できます。

set "myvar=26:deployment.javaws.jre.0.product=1.8.0_111" 

rem // Split off everything up to `jre.` (case-insensitive search): 
set "integer=%myvar:*jre.=%" 
rem /* Convert remaining portion to a signed 32-bit integer 
rem (everything up to the `.` in `.product` is regarded): */ 
set /A "integer=integer" 

echo %integer% 
完璧に動作
関連する問題