On a ici un tableau avec 4 lignes.
Le but est d'isolé des données dans ces lignes.
On recherche ce qu'il y a après data-host=@
et le mot doit s'arrêter avant le prochain @
Pour cela le script utilise la fonction indexof pour recherche le mot clé.
Si on le trouve, on recherche la position du prochain @
et on isole ce qu'il y a entre les 2
Clear-Host
$MotCle = "data-host=@"
$MonTableau = @()
$MonTableau += "Ligne 1 Du texte"
$MonTableau += "Ligne 2 data-host=@Robert@ et la campagne"
$MonTableau += "Ligne 3"
$MonTableau += "Ligne 4 data-host=@Loda@ et la bougie"
foreach ($UneLigne in $MonTableau){
Write-Host $UneLigne
}
Write-host ""
foreach ($UneLigne in $MonTableau){
$Position1 = $UneLigne.indexof($MotCle)
if ($Position1 -gt 0) { #Si le mot clé à été trouvé
Write-host "Position 1 (avant la prise en compte de la longueur du mot clé) : $($Position1)"
#On récupère la position du caractère situé juste après le mot clé
Write-host "Longueur mot clé : $($MotCle.Length)"
$Position1 = $($Position1+$MotCle.Length)
Write-host "Position 1 : $($Position1)"
$Position2 = $UneLigne.indexof("@",$($Position1))
Write-host "Position 2 : $($Position2)"
Write-host "Position 3 : $($Position2-$Position1)"
$MyLine = $UneLigne.substring($Position1,$($Position2-$Position1))
Write-host "Mot isolé : $MyLine"
}
}
Lien vers le fichier : cliquez ici
Résultat de ce code
Article(s) précédent(s)
Article(s) en relation(s)