Dans mon code, j'arrive à lire le contenu du fichier, à aller chercher la
balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS )
Mais ce que je souhaiterais faire, c'est remplacer son contenu
(<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la grosse
panique à bord !!
Merci pour votre aide.
FRED.
'RECHERCHE LIGNE REF DOS
Const ForReading = 1, ForWriting = 2
Dim OFSO3, MyFile2
Set OFSO3 = CreateObject("Scripting.FileSystemObject")
Set MyFile2 = OFSO3.OpenTextFile(Mon_Fic, ForReading)
' Tant que la fin du fichier n'est pas atteinte...
Do While Not MyFile2.AtEndOfStream
'...Lire chaque ligne
ReadLineTextFile = MyFile2.ReadLine
'Si la chaîne de caractère <refdos> est rouvée, alors l'inclure dans la
variable "ReadLineTextFile"
If InStr(ReadLineTextFile, "<refdos>") Then
MsgBox ReadLineTextFile
Else
End If
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles LAURENT [MVP]
"Fred" a écrit dans le message de news: | Bonjour et merci pour les réponses précédentes.
Bonsoir,
| Dans mon code, j'arrive à lire le contenu du fichier, à aller | chercher la balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS ) | Mais ce que je souhaiterais faire, c'est remplacer son contenu | (<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la | grosse panique à bord !!
Par exemple avec une expression régulière. Celle-ci devrait répondre à votre besoin :
Set oRe=New RegExp oRe.Global=True oRe.Pattern=">[^>]+?<"
While Not oFile.AtEndOfStream strLine=oFile.ReadLine If oRe.Test(strLine) Then WScript.Echo oRe.Replace(strLine, ">TATA<") End If Wend
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
"Fred" <poiuytreza@lavirvee.fr> a écrit dans le message de
news:OWczJmbYIHA.3400@TK2MSFTNGP03.phx.gbl
| Bonjour et merci pour les réponses précédentes.
Bonsoir,
| Dans mon code, j'arrive à lire le contenu du fichier, à aller
| chercher la balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS )
| Mais ce que je souhaiterais faire, c'est remplacer son contenu
| (<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la
| grosse panique à bord !!
Par exemple avec une expression régulière.
Celle-ci devrait répondre à votre besoin :
Set oRe=New RegExp
oRe.Global=True
oRe.Pattern=">[^>]+?<"
While Not oFile.AtEndOfStream
strLine=oFile.ReadLine
If oRe.Test(strLine) Then
WScript.Echo oRe.Replace(strLine, ">TATA<")
End If
Wend
--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
"Fred" a écrit dans le message de news: | Bonjour et merci pour les réponses précédentes.
Bonsoir,
| Dans mon code, j'arrive à lire le contenu du fichier, à aller | chercher la balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS ) | Mais ce que je souhaiterais faire, c'est remplacer son contenu | (<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la | grosse panique à bord !!
Par exemple avec une expression régulière. Celle-ci devrait répondre à votre besoin :
Set oRe=New RegExp oRe.Global=True oRe.Pattern=">[^>]+?<"
While Not oFile.AtEndOfStream strLine=oFile.ReadLine If oRe.Test(strLine) Then WScript.Echo oRe.Replace(strLine, ">TATA<") End If Wend
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Fred
Bonjour,
Encore désolé mais lorsque j'exécute le code, jobtiens l'erreur:
"Type défini par l'utilisateur non défini"
...
Merci pour votre aide.
FRED.
"Gilles LAURENT [MVP]" a écrit dans le message de news:uUeMe%
"Fred" a écrit dans le message de news: | Bonjour et merci pour les réponses précédentes.
Bonsoir,
| Dans mon code, j'arrive à lire le contenu du fichier, à aller | chercher la balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS ) | Mais ce que je souhaiterais faire, c'est remplacer son contenu | (<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la | grosse panique à bord !!
Par exemple avec une expression régulière. Celle-ci devrait répondre à votre besoin :
Set oRe=New RegExp oRe.Global=True oRe.Pattern=">[^>]+?<"
While Not oFile.AtEndOfStream strLine=oFile.ReadLine If oRe.Test(strLine) Then WScript.Echo oRe.Replace(strLine, ">TATA<") End If Wend
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Bonjour,
Encore désolé mais lorsque j'exécute le code, jobtiens l'erreur:
"Type défini par l'utilisateur non défini"
...
Merci pour votre aide.
FRED.
"Gilles LAURENT [MVP]" <glsft@free.fr> a écrit dans le message de
news:uUeMe%23eYIHA.5984@TK2MSFTNGP06.phx.gbl...
"Fred" <poiuytreza@lavirvee.fr> a écrit dans le message de
news:OWczJmbYIHA.3400@TK2MSFTNGP03.phx.gbl
| Bonjour et merci pour les réponses précédentes.
Bonsoir,
| Dans mon code, j'arrive à lire le contenu du fichier, à aller
| chercher la balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS )
| Mais ce que je souhaiterais faire, c'est remplacer son contenu
| (<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la
| grosse panique à bord !!
Par exemple avec une expression régulière.
Celle-ci devrait répondre à votre besoin :
Set oRe=New RegExp
oRe.Global=True
oRe.Pattern=">[^>]+?<"
While Not oFile.AtEndOfStream
strLine=oFile.ReadLine
If oRe.Test(strLine) Then
WScript.Echo oRe.Replace(strLine, ">TATA<")
End If
Wend
--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Encore désolé mais lorsque j'exécute le code, jobtiens l'erreur:
"Type défini par l'utilisateur non défini"
...
Merci pour votre aide.
FRED.
"Gilles LAURENT [MVP]" a écrit dans le message de news:uUeMe%
"Fred" a écrit dans le message de news: | Bonjour et merci pour les réponses précédentes.
Bonsoir,
| Dans mon code, j'arrive à lire le contenu du fichier, à aller | chercher la balise qui m'interresse ( 'RECHERCHE LIGNE REF DOS ) | Mais ce que je souhaiterais faire, c'est remplacer son contenu | (<refdos>toto</refdos> par <refdos>TATA</refdos>) et là..... c'est la | grosse panique à bord !!
Par exemple avec une expression régulière. Celle-ci devrait répondre à votre besoin :
Set oRe=New RegExp oRe.Global=True oRe.Pattern=">[^>]+?<"
While Not oFile.AtEndOfStream strLine=oFile.ReadLine If oRe.Test(strLine) Then WScript.Echo oRe.Replace(strLine, ">TATA<") End If Wend
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Gilles LAURENT [MVP]
"Fred" a écrit dans le message de news: | Bonjour,
Bonjour,
| Encore désolé mais lorsque j'exécute le code, jobtiens l'erreur: | | "Type défini par l'utilisateur non défini"
Vous devez adapter ce code à votre contexte. Ci-dessous un exemple très simple :
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Gilles LAURENT [MVP]
"Fred" a écrit dans le message de news: | Bon, je sus vraiment désolé d'être boulet, mais je n'arrive pas à | faire grand chose...
Peut-être car vous utiliser du VBA et non du VBS !
En VBA :
Sub Test() Const LINE = "<refdos>toto</refdos>" Set oRe = CreateObject("VBScript.RegExp") oRe.Global = True oRe.Pattern = ">[^>]+?<"
MsgBox "Avant:" & LINE MsgBox "Après:" & oRe.Replace(LINE, ">TATA<") End Sub
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
"Fred" <poiuytreza@lavirvee.fr> a écrit dans le message de
news:OpooU6lYIHA.2268@TK2MSFTNGP02.phx.gbl
| Bon, je sus vraiment désolé d'être boulet, mais je n'arrive pas à
| faire grand chose...
Peut-être car vous utiliser du VBA et non du VBS !
En VBA :
Sub Test()
Const LINE = "<refdos>toto</refdos>"
Set oRe = CreateObject("VBScript.RegExp")
oRe.Global = True
oRe.Pattern = ">[^>]+?<"
MsgBox "Avant:" & LINE
MsgBox "Après:" & oRe.Replace(LINE, ">TATA<")
End Sub
--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
"Fred" a écrit dans le message de news: | Bon, je sus vraiment désolé d'être boulet, mais je n'arrive pas à | faire grand chose...
Peut-être car vous utiliser du VBA et non du VBS !
En VBA :
Sub Test() Const LINE = "<refdos>toto</refdos>" Set oRe = CreateObject("VBScript.RegExp") oRe.Global = True oRe.Pattern = ">[^>]+?<"
MsgBox "Avant:" & LINE MsgBox "Après:" & oRe.Replace(LINE, ">TATA<") End Sub
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Fred
Bonjour,
Oui, mais cela affiche une MmsgBox, ça n'écris pas dans le fichier...
FRED.
"Gilles LAURENT [MVP]" a écrit dans le message de news:uVUX8%
"Fred" a écrit dans le message de news: | Bon, je sus vraiment désolé d'être boulet, mais je n'arrive pas à | faire grand chose...
Peut-être car vous utiliser du VBA et non du VBS !
En VBA :
Sub Test() Const LINE = "<refdos>toto</refdos>" Set oRe = CreateObject("VBScript.RegExp") oRe.Global = True oRe.Pattern = ">[^>]+?<"
MsgBox "Avant:" & LINE MsgBox "Après:" & oRe.Replace(LINE, ">TATA<") End Sub
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Bonjour,
Oui, mais cela affiche une MmsgBox, ça n'écris pas dans le fichier...
FRED.
"Gilles LAURENT [MVP]" <glsft@free.fr> a écrit dans le message de
news:uVUX8%23qYIHA.3652@TK2MSFTNGP02.phx.gbl...
"Fred" <poiuytreza@lavirvee.fr> a écrit dans le message de
news:OpooU6lYIHA.2268@TK2MSFTNGP02.phx.gbl
| Bon, je sus vraiment désolé d'être boulet, mais je n'arrive pas à
| faire grand chose...
Peut-être car vous utiliser du VBA et non du VBS !
En VBA :
Sub Test()
Const LINE = "<refdos>toto</refdos>"
Set oRe = CreateObject("VBScript.RegExp")
oRe.Global = True
oRe.Pattern = ">[^>]+?<"
MsgBox "Avant:" & LINE
MsgBox "Après:" & oRe.Replace(LINE, ">TATA<")
End Sub
--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr