Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[VB.NET 2005] - Détection de X caractéres

5 réponses
Avatar
Scottmat
Bonjours à tous,

Je souhaiterais détecter une chaine de x caractère.

Les mots clés recherchés sont la composition d’une balise image

<img src="C:\Documents and Settings\XX\Mes documents\Mes images\1.PNG">

Donc tous ce qui compose la balise et qui ne change jamais (donc ce qui nous
aidera pour effectuez notre rechercher), voici la syntaxe ci-dessous :

<img src="Emplacement">

Emplacement sera tous types de caractère et de nombre inconnu (x)

Et je voudrais donc détecter les balises images et récupéré les valeurs
emplacement

Merci par avance

5 réponses

Avatar
Patrick Philippot
Bonjour,

<img src="Emplacement">

Emplacement sera tous types de caractère et de nombre inconnu (x)

Et je voudrais donc détecter les balises images et récupéré les
valeurs emplacement



Pourquoi ne pas utiliser les expressions régulières (classe RegEx + classes
associées)?

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
Mathieu Francesch
Bonjour ScottMat,

Pour aller dans le sens de Patrick et comme je suis actuellement en train de
tester les classes HttpWebRequest et HttpWebReponse j'ai rajouter dans mon
précédent code que j'ai posté sur ce forum, une fonctionnalité qui répond
peut-être à votre besoin :

#######################################################

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim WhatIsMyIPRequest As HttpWebRequest
Dim Reponse As HttpWebResponse
Dim Stream As StreamReader
Dim stringResult As String
Dim recherche As String = "img"
WhatIsMyIPRequest =
CType(WebRequest.Create("http://www.microsoft.com/"), HttpWebRequest)
Reponse = CType(WhatIsMyIPRequest.GetResponse(), HttpWebResponse)
Stream = New StreamReader(Reponse.GetResponseStream())

stringResult = Stream.ReadToEnd()
Stream.Close()

Dim MotImgReg As New Regex("<img")
Dim MotsImg As MatchCollection = MotImgReg.Matches(stringResult)
Dim MotImg As Match
Dim Balise As String
Dim Emplacement As String

Try
For Each MotImg In MotsImg
Dim IndexOfEmplacement As Integer
Dim LongeurEmplacement As Integer

Balise = stringResult.Substring(MotImg.Index,
stringResult.IndexOf(">", MotImg.Index) - MotImg.Index + 1)
IndexOfEmplacement = Balise.IndexOf(Chr(34),
Balise.IndexOf("src")) + 1


LongeurEmplacement = Balise.IndexOf(Chr(34),
IndexOfEmplacement) - IndexOfEmplacement
Emplacement = Balise.Substring(IndexOfEmplacement,
LongeurEmplacement)
MessageBox.Show(Emplacement)
Next
Catch ex As Exception
End Try

End Sub

########################################################

Comme toujours, c'est optimisable ;-)

Bonne journée,


--
Cordialement,

Mathieu Francesch



"Scottmat" a écrit :

Bonjours à tous,

Je souhaiterais détecter une chaine de x caractère.

Les mots clés recherchés sont la composition d’une balise image

<img src="C:Documents and SettingsXXMes documentsMes images1.PNG">

Donc tous ce qui compose la balise et qui ne change jamais (donc ce qui nous
aidera pour effectuez notre rechercher), voici la syntaxe ci-dessous :

<img src="Emplacement">

Emplacement sera tous types de caractère et de nombre inconnu (x)

Et je voudrais donc détecter les balises images et récupéré les valeurs
emplacement

Merci par avance



Avatar
Scottmat
tout d'abord merci à vous deux pour vos réponses hyper rapide
dsl je suis débutant dans les collections match, expressions et autre,
j'ai essayer de comprendre ton code, donc si j'ai bien compris (arréte moi
surtout si je me trompe) ton code sert à récupéré les emplacements des images
se trouvant sur la page :
http://www.microsoft.com/ ?
=> petite note au passage la variable recherche n'est pas utiliser.
donc c'est exactement ce que je chercher mais pour du code HTML se trouvant
dans un richtextbox.
comment puis-je adapter pour un richtextbox ?
Merci beaucoup pour ton aide qui m'ai très précieuse ;)

"Mathieu Francesch" a écrit :

Bonjour ScottMat,

Pour aller dans le sens de Patrick et comme je suis actuellement en train de
tester les classes HttpWebRequest et HttpWebReponse j'ai rajouter dans mon
précédent code que j'ai posté sur ce forum, une fonctionnalité qui répond
peut-être à votre besoin :

#######################################################

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim WhatIsMyIPRequest As HttpWebRequest
Dim Reponse As HttpWebResponse
Dim Stream As StreamReader
Dim stringResult As String
Dim recherche As String = "img"
WhatIsMyIPRequest =
CType(WebRequest.Create("http://www.microsoft.com/"), HttpWebRequest)
Reponse = CType(WhatIsMyIPRequest.GetResponse(), HttpWebResponse)
Stream = New StreamReader(Reponse.GetResponseStream())

stringResult = Stream.ReadToEnd()
Stream.Close()

Dim MotImgReg As New Regex("<img")
Dim MotsImg As MatchCollection = MotImgReg.Matches(stringResult)
Dim MotImg As Match
Dim Balise As String
Dim Emplacement As String

Try
For Each MotImg In MotsImg
Dim IndexOfEmplacement As Integer
Dim LongeurEmplacement As Integer

Balise = stringResult.Substring(MotImg.Index,
stringResult.IndexOf(">", MotImg.Index) - MotImg.Index + 1)
IndexOfEmplacement = Balise.IndexOf(Chr(34),
Balise.IndexOf("src")) + 1


LongeurEmplacement = Balise.IndexOf(Chr(34),
IndexOfEmplacement) - IndexOfEmplacement
Emplacement = Balise.Substring(IndexOfEmplacement,
LongeurEmplacement)
MessageBox.Show(Emplacement)
Next
Catch ex As Exception
End Try

End Sub

########################################################

Comme toujours, c'est optimisable ;-)

Bonne journée,


--
Cordialement,

Mathieu Francesch



"Scottmat" a écrit :

> Bonjours à tous,
>
> Je souhaiterais détecter une chaine de x caractère.
>
> Les mots clés recherchés sont la composition d’une balise image
>
> <img src="C:Documents and SettingsXXMes documentsMes images1.PNG">
>
> Donc tous ce qui compose la balise et qui ne change jamais (donc ce qui nous
> aidera pour effectuez notre rechercher), voici la syntaxe ci-dessous :
>
> <img src="Emplacement">
>
> Emplacement sera tous types de caractère et de nombre inconnu (x)
>
> Et je voudrais donc détecter les balises images et récupéré les valeurs
> emplacement
>
> Merci par avance
>


Avatar
Mathieu Francesch
Bonsoir ScottMat,

D'une part, effectivement "recherche" ne sert à rien ;-) d'autre part,
ce code permet de récuperer le code source de la page d'index de Microsoft
dans une chaîne et d'analyser cette dernière afin de retourner tous les
emplacements d'images.

En ce qui concerne ton richtextbox, tu peux par curiosité modifié le code de
la manière suivante :

Aprés l'instuction : stringResult = Stream.ReadToEnd()
tu ajoutes : RichTextBox1.Text = stringResult

A partir de là, tu remplaces toutes les références à stringResult par
RichTextBox1.Text

Cela te convient ?



--
Cordialement,

Mathieu Francesch



"Scottmat" a écrit :

tout d'abord merci à vous deux pour vos réponses hyper rapide
dsl je suis débutant dans les collections match, expressions et autre,
j'ai essayer de comprendre ton code, donc si j'ai bien compris (arréte moi
surtout si je me trompe) ton code sert à récupéré les emplacements des images
se trouvant sur la page :
http://www.microsoft.com/ ?
=> petite note au passage la variable recherche n'est pas utiliser.
donc c'est exactement ce que je chercher mais pour du code HTML se trouvant
dans un richtextbox.
comment puis-je adapter pour un richtextbox ?
Merci beaucoup pour ton aide qui m'ai très précieuse ;)

"Mathieu Francesch" a écrit :

> Bonjour ScottMat,
>
> Pour aller dans le sens de Patrick et comme je suis actuellement en train de
> tester les classes HttpWebRequest et HttpWebReponse j'ai rajouter dans mon
> précédent code que j'ai posté sur ce forum, une fonctionnalité qui répond
> peut-être à votre besoin :
>
> #######################################################
>
> Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
> System.EventArgs) Handles Button1.Click
> Dim WhatIsMyIPRequest As HttpWebRequest
> Dim Reponse As HttpWebResponse
> Dim Stream As StreamReader
> Dim stringResult As String
> Dim recherche As String = "img"
> WhatIsMyIPRequest =
> CType(WebRequest.Create("http://www.microsoft.com/"), HttpWebRequest)
> Reponse = CType(WhatIsMyIPRequest.GetResponse(), HttpWebResponse)
> Stream = New StreamReader(Reponse.GetResponseStream())
>
> stringResult = Stream.ReadToEnd()
> Stream.Close()
>
> Dim MotImgReg As New Regex("<img")
> Dim MotsImg As MatchCollection = MotImgReg.Matches(stringResult)
> Dim MotImg As Match
> Dim Balise As String
> Dim Emplacement As String
>
> Try
> For Each MotImg In MotsImg
> Dim IndexOfEmplacement As Integer
> Dim LongeurEmplacement As Integer
>
> Balise = stringResult.Substring(MotImg.Index,
> stringResult.IndexOf(">", MotImg.Index) - MotImg.Index + 1)
> IndexOfEmplacement = Balise.IndexOf(Chr(34),
> Balise.IndexOf("src")) + 1
>
>
> LongeurEmplacement = Balise.IndexOf(Chr(34),
> IndexOfEmplacement) - IndexOfEmplacement
> Emplacement = Balise.Substring(IndexOfEmplacement,
> LongeurEmplacement)
> MessageBox.Show(Emplacement)
> Next
> Catch ex As Exception
> End Try
>
> End Sub
>
> ########################################################
>
> Comme toujours, c'est optimisable ;-)
>
> Bonne journée,
>
>
> --
> Cordialement,
>
> Mathieu Francesch
>
>
>
> "Scottmat" a écrit :
>
> > Bonjours à tous,
> >
> > Je souhaiterais détecter une chaine de x caractère.
> >
> > Les mots clés recherchés sont la composition d’une balise image
> >
> > <img src="C:Documents and SettingsXXMes documentsMes images1.PNG">
> >
> > Donc tous ce qui compose la balise et qui ne change jamais (donc ce qui nous
> > aidera pour effectuez notre rechercher), voici la syntaxe ci-dessous :
> >
> > <img src="Emplacement">
> >
> > Emplacement sera tous types de caractère et de nombre inconnu (x)
> >
> > Et je voudrais donc détecter les balises images et récupéré les valeurs
> > emplacement
> >
> > Merci par avance
> >


Avatar
Scottmat
tout simplement : NIKEL !!!
je te remercie beaucoup pour ton aide ;) et te souhaite une bonne semaine et
te remercie encore ;)
tchao

"Mathieu Francesch" a écrit :

Bonsoir ScottMat,

D'une part, effectivement "recherche" ne sert à rien ;-) d'autre part,
ce code permet de récuperer le code source de la page d'index de Microsoft
dans une chaîne et d'analyser cette dernière afin de retourner tous les
emplacements d'images.

En ce qui concerne ton richtextbox, tu peux par curiosité modifié le code de
la manière suivante :

Aprés l'instuction : stringResult = Stream.ReadToEnd()
tu ajoutes : RichTextBox1.Text = stringResult

A partir de là, tu remplaces toutes les références à stringResult par
RichTextBox1.Text

Cela te convient ?



--
Cordialement,

Mathieu Francesch



"Scottmat" a écrit :

> tout d'abord merci à vous deux pour vos réponses hyper rapide
> dsl je suis débutant dans les collections match, expressions et autre,
> j'ai essayer de comprendre ton code, donc si j'ai bien compris (arréte moi
> surtout si je me trompe) ton code sert à récupéré les emplacements des images
> se trouvant sur la page :
> http://www.microsoft.com/ ?
> => petite note au passage la variable recherche n'est pas utiliser.
> donc c'est exactement ce que je chercher mais pour du code HTML se trouvant
> dans un richtextbox.
> comment puis-je adapter pour un richtextbox ?
> Merci beaucoup pour ton aide qui m'ai très précieuse ;)
>
> "Mathieu Francesch" a écrit :
>
> > Bonjour ScottMat,
> >
> > Pour aller dans le sens de Patrick et comme je suis actuellement en train de
> > tester les classes HttpWebRequest et HttpWebReponse j'ai rajouter dans mon
> > précédent code que j'ai posté sur ce forum, une fonctionnalité qui répond
> > peut-être à votre besoin :
> >
> > #######################################################
> >
> > Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
> > System.EventArgs) Handles Button1.Click
> > Dim WhatIsMyIPRequest As HttpWebRequest
> > Dim Reponse As HttpWebResponse
> > Dim Stream As StreamReader
> > Dim stringResult As String
> > Dim recherche As String = "img"
> > WhatIsMyIPRequest =
> > CType(WebRequest.Create("http://www.microsoft.com/"), HttpWebRequest)
> > Reponse = CType(WhatIsMyIPRequest.GetResponse(), HttpWebResponse)
> > Stream = New StreamReader(Reponse.GetResponseStream())
> >
> > stringResult = Stream.ReadToEnd()
> > Stream.Close()
> >
> > Dim MotImgReg As New Regex("<img")
> > Dim MotsImg As MatchCollection = MotImgReg.Matches(stringResult)
> > Dim MotImg As Match
> > Dim Balise As String
> > Dim Emplacement As String
> >
> > Try
> > For Each MotImg In MotsImg
> > Dim IndexOfEmplacement As Integer
> > Dim LongeurEmplacement As Integer
> >
> > Balise = stringResult.Substring(MotImg.Index,
> > stringResult.IndexOf(">", MotImg.Index) - MotImg.Index + 1)
> > IndexOfEmplacement = Balise.IndexOf(Chr(34),
> > Balise.IndexOf("src")) + 1
> >
> >
> > LongeurEmplacement = Balise.IndexOf(Chr(34),
> > IndexOfEmplacement) - IndexOfEmplacement
> > Emplacement = Balise.Substring(IndexOfEmplacement,
> > LongeurEmplacement)
> > MessageBox.Show(Emplacement)
> > Next
> > Catch ex As Exception
> > End Try
> >
> > End Sub
> >
> > ########################################################
> >
> > Comme toujours, c'est optimisable ;-)
> >
> > Bonne journée,
> >
> >
> > --
> > Cordialement,
> >
> > Mathieu Francesch
> >
> >
> >
> > "Scottmat" a écrit :
> >
> > > Bonjours à tous,
> > >
> > > Je souhaiterais détecter une chaine de x caractère.
> > >
> > > Les mots clés recherchés sont la composition d’une balise image
> > >
> > > <img src="C:Documents and SettingsXXMes documentsMes images1.PNG">
> > >
> > > Donc tous ce qui compose la balise et qui ne change jamais (donc ce qui nous
> > > aidera pour effectuez notre rechercher), voici la syntaxe ci-dessous :
> > >
> > > <img src="Emplacement">
> > >
> > > Emplacement sera tous types de caractère et de nombre inconnu (x)
> > >
> > > Et je voudrais donc détecter les balises images et récupéré les valeurs
> > > emplacement
> > >
> > > Merci par avance
> > >