String pour récupération de valeurs
Bonjour a tous, je dois extraire des données depuis un fichier txt (un extrait + bas)
Jarrive a avoir les 3 premiers car. mais après ça se corse un peu, j'aimerai récupérer les valeurs décimales mais comme elles ne sont pas alignées, c'est compliqué !
Comment fait-on en powerhsell pour lui dire de lire une ligne jusqu'a qu'il rencontre des chiffres ? Parce qu'ajouter des exceptions sur chaque ligne qui dépasse n'est pas très optimisé...
Le contenu du fichier est ainsi :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| ALL Albanian Leke 0.0074340297 134.51654614
DZD Algerian Dinars 0.0082469583 121.25682706
ARS Argentine Pesos 0.0578813786 17.276713586
AUD Australian Dollars 0.6694986965 1.4936548873
BSD Bahamian Dollars 0.9014716651 1.1092972067
BHD Bahraini Dinars 2.3906948761 0.4182884274
BDT Bangladeshi Taka 0.0111542552 89.651884687
BBD Barbadian or Bajan Dollars 0.4507358326 2.2185944134
BMD Bermudian Dollars 0.9014716651 1.1092972067
BOB Bolivian Bolivianos 0.1304120671 7.6680020638
BAM Bosnian Convertible Marka 0.5112918812 1.9558300001
BWP Botswana Pula 0.0871054582 11.480336836
BRL Brazilian Real 0.2911200286 3.4350092801
GBP British Pounds 1.1648179859 0.8585032272
BGN Bulgarian Leva 0.5109977354 1.9569558349
XOF CFA Francs 0.0015244902 655.95700000
XPF CFP Francs 0.0083800000 119.33174224
CAD Canadian Dollars 0.6637425911 1.5066081542
XAF Central African Francs 0.0015244902 655.95700000
CLP Chilean Pesos 0.0013523874 739.43307181
CNY Chinese Yuan Renminbi 0.1308417146 7.6428224956
COP Colombian Pesos 0.0003130221 3194.6630468
CRC Costa Rican Colones 0.0015796446 633.05379958
HRK Croatian Kuna 0.1345665246 7.4312686828
CUP Cuban Pesos 0.0340177987 29.396375977
CZK Czech Koruny 0.0379392466 26.357929840 |
si qq un pouvait me venir en aide, je lui serais très reconnaissant !
Voilà le code que j'ai écrit pour le moment :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| $array = (Get-Content -path c:\temp\currency.txt)[24 .. 193] | where { $_ -ne "$null" }
foreach ($a in $array)
{
#get currency code
$currencyCode = $a.substring(8,3)
write-output $currencyCode
#get currency name
$currencyname = $a.substring(12,15)
write-output $currencyname
#get currency Euro unit
$rateValueEur = $a.substring(25,19).TrimStart()
write-output $rateValueEur
$rateValueFr = [float]$rateValueEur * 6.55957
write-output $rateValueFr
} |