Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui
sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la
remplacer par "<refdos>Bon numéro</refdos>"
Le problème est que je n'arrive pas à remplacer la totaliré de la balise,
mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais
numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>"
par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse sans
écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("c:\Temp\test.txt", ForWriting)
f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")
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
Thierry DEMAN [MVP]
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)". L'aide VB explique un peu les expressions régulières.
Voici l'exemple de VbScript adapté en fonction de ton cas!
Function ReplaceTest(patrn, replStr) Dim regEx, str1 ' Crée des variables. str1 = "<refdos>mauvais numéro</refdos>" Set regEx = New RegExp ' Crée l'expression régulière. regEx.Pattern = patrn ' Définit les critères. regEx.IgnoreCase = True ' Ignore la casse. ReplaceTest = regEx.Replace(str1, replStr) ' Effectue le remplacement. End Function
Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la remplacer par "<refdos>Bon numéro</refdos>" Le problème est que je n'arrive pas à remplacer la totaliré de la balise, mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>" par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse sans écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile("c:Temptest.txt", ForWriting) f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")
Merci pour votre aide.
FRED.
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la
méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)".
L'aide VB explique un peu les expressions régulières.
Voici l'exemple de VbScript adapté en fonction de ton cas!
Function ReplaceTest(patrn, replStr)
Dim regEx, str1 ' Crée des variables.
str1 = "<refdos>mauvais numéro</refdos>"
Set regEx = New RegExp ' Crée l'expression régulière.
regEx.Pattern = patrn ' Définit les critères.
regEx.IgnoreCase = True ' Ignore la casse.
ReplaceTest = regEx.Replace(str1, replStr) ' Effectue le remplacement.
End Function
"Fred" <poiuytreza@lavirvee.fr> a écrit dans le message de
news:OwEEyVwZIHA.5768@TK2MSFTNGP03.phx.gbl...
Bonjour,
Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui
sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la
remplacer par "<refdos>Bon numéro</refdos>"
Le problème est que je n'arrive pas à remplacer la totaliré de la balise,
mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais
numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>"
par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse
sans écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("c:Temptest.txt", ForWriting)
f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)". L'aide VB explique un peu les expressions régulières.
Voici l'exemple de VbScript adapté en fonction de ton cas!
Function ReplaceTest(patrn, replStr) Dim regEx, str1 ' Crée des variables. str1 = "<refdos>mauvais numéro</refdos>" Set regEx = New RegExp ' Crée l'expression régulière. regEx.Pattern = patrn ' Définit les critères. regEx.IgnoreCase = True ' Ignore la casse. ReplaceTest = regEx.Replace(str1, replStr) ' Effectue le remplacement. End Function
Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la remplacer par "<refdos>Bon numéro</refdos>" Le problème est que je n'arrive pas à remplacer la totaliré de la balise, mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>" par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse sans écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile("c:Temptest.txt", ForWriting) f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")
Merci pour votre aide.
FRED.
Stephane
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)". L'aide VB explique un peu les expressions régulières.
Ouai euh vraiment un peu, même beaucoup très peu :-))
Ton exemple m'en a appris bien plus que la doc !!
Merci beaucoup.
Stephane
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la
méthode "Replace" d'un objet d'expression régulière
"regExp.replace(...)". L'aide VB explique un peu les expressions
régulières.
Ouai euh vraiment un peu, même beaucoup très peu :-))
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)". L'aide VB explique un peu les expressions régulières.
Ouai euh vraiment un peu, même beaucoup très peu :-))
Ton exemple m'en a appris bien plus que la doc !!
Merci beaucoup.
Stephane
Fred
Bonjour,
Merci beaucoup pour ta réponse. Je me plonge dans l'exemple et teste cela.
A bientôt,
FRED.
"Thierry DEMAN [MVP]" a écrit dans le message de news:
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)". L'aide VB explique un peu les expressions régulières.
Voici l'exemple de VbScript adapté en fonction de ton cas!
Function ReplaceTest(patrn, replStr) Dim regEx, str1 ' Crée des variables. str1 = "<refdos>mauvais numéro</refdos>" Set regEx = New RegExp ' Crée l'expression régulière. regEx.Pattern = patrn ' Définit les critères. regEx.IgnoreCase = True ' Ignore la casse. ReplaceTest = regEx.Replace(str1, replStr) ' Effectue le remplacement. End Function
Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la remplacer par "<refdos>Bon numéro</refdos>" Le problème est que je n'arrive pas à remplacer la totaliré de la balise, mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>" par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse sans écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile("c:Temptest.txt", ForWriting) f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")
Merci pour votre aide.
FRED.
Bonjour,
Merci beaucoup pour ta réponse.
Je me plonge dans l'exemple et teste cela.
A bientôt,
FRED.
"Thierry DEMAN [MVP]" <tdemanNOSPAM@NOSPAMfree.fr> a écrit dans le message
de news:2FEAF592-89C5-4538-A2EF-57BB1DE091B5@microsoft.com...
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la
méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)".
L'aide VB explique un peu les expressions régulières.
Voici l'exemple de VbScript adapté en fonction de ton cas!
Function ReplaceTest(patrn, replStr)
Dim regEx, str1 ' Crée des variables.
str1 = "<refdos>mauvais numéro</refdos>"
Set regEx = New RegExp ' Crée l'expression régulière.
regEx.Pattern = patrn ' Définit les critères.
regEx.IgnoreCase = True ' Ignore la casse.
ReplaceTest = regEx.Replace(str1, replStr) ' Effectue le remplacement.
End Function
"Fred" <poiuytreza@lavirvee.fr> a écrit dans le message de
news:OwEEyVwZIHA.5768@TK2MSFTNGP03.phx.gbl...
Bonjour,
Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui
sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la
remplacer par "<refdos>Bon numéro</refdos>"
Le problème est que je n'arrive pas à remplacer la totaliré de la balise,
mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais
numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>"
par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse
sans écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("c:Temptest.txt", ForWriting)
f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")
Merci beaucoup pour ta réponse. Je me plonge dans l'exemple et teste cela.
A bientôt,
FRED.
"Thierry DEMAN [MVP]" a écrit dans le message de news:
Bonjour,
au lieu d'utiliser la fonction "Replace(...)", tu devrais utiliser la méthode "Replace" d'un objet d'expression régulière "regExp.replace(...)". L'aide VB explique un peu les expressions régulières.
Voici l'exemple de VbScript adapté en fonction de ton cas!
Function ReplaceTest(patrn, replStr) Dim regEx, str1 ' Crée des variables. str1 = "<refdos>mauvais numéro</refdos>" Set regEx = New RegExp ' Crée l'expression régulière. regEx.Pattern = patrn ' Définit les critères. regEx.IgnoreCase = True ' Ignore la casse. ReplaceTest = regEx.Replace(str1, replStr) ' Effectue le remplacement. End Function
Dans le script ci-desosus, je rencontre les deux problèmes suivants (qui sont d'ailleurs liés...):
- Je cherche une balise xml "<refdos>Mauvais numéro</refdos>" pour la remplacer par "<refdos>Bon numéro</refdos>" Le problème est que je n'arrive pas à remplacer la totaliré de la balise, mais seulement le texte que je recherche "<refdos".
- Je souhaiterais, dans l'absolu, pouvoir remplacer "<refdos>Mauvais numéro</refdos>" par une variable ainsi que "<refdos>Bon numéro</refdos>" par une variable également.
Et bien entendu, je souhaite seulement remplacer celle qui m'interresse sans écraser les autres...
Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile("c:Temptest.txt", ForWriting) f.Write Replace(st, "<refdos>", "<refdos>Bon numéro</refdos>")