FOROS PROFESIONALES
WINDEV
,
WEBDEV
y
WINDEV Mobile
Inicio
|
Mensajes recientes
|
Conéctese...
|
Desconectar
|
Español
Inicio
→
WINDEV 2024
→
[WD22] Aide expression régulière
[WD22] Aide expression régulière
Iniciado por Wahib, 19,jul. 2018 15:28 - 3 respuestas
Conéctese…
Wahib
#1
Miembro registrado
45 mensajes
Popularité : +2 (2 votes)
Publicado el 19,julio 2018 - 15:28
Bonjour,
J'ai un souci avec une regex.
Je dois isoler les éléments d'une certaine couleur dans du RTF.
Voici mon texte :
{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Tahoma;}}
{\colortbl ;\red0\green0\blue0;\red64\green85\blue141;\red0\green30\blue196;}
{\*\generator Riched20 10.0.17134}\viewkind4\uc1
\pard\cf1 Elem1\cf2 Hello \cf3 Elem2\par
2nd Liane : \cf3 Elem3\cf2\par
\cf3 Elem4\cf2 3rd\cf3 Elem5\cf2 Line : \cf3 Elem6\cf2\par
4th Line : \cf1 Elem7\cf0\par
}
Voici la regex que j'utilise :
(?<=\\cf[13] ).*?(?=\\cf.)
Je l'ai testée sur différent sites (
https://regex101.com/
,
https://www.regextester.com/
,
https://regexr.com/
,...) j'obtiens les résultats désirés sur ces sites, mais pas dans Windev.
Avez-vous une idée de la raison?
Merci d'avance.
Informar
0
0
Charly CANDO
#2
Miembro registrado
948 mensajes
Popularité : +30 (92 votes)
Publicado el 19,julio 2018 - 15:54
#Delete
Mensaje modificado, 19,julio 2018 - 15:55
Informar
0
0
Jurassic Pork
#3
Miembro registrado
962 mensajes
Popularité : +183 (185 votes)
Publicado el 20,julio 2018 - 01:58
hello,
si dans windev tu utilises VérifieExpressionRégulière cela ne fonctionnera pas car la fonction ne gère pas
les expressions régulières avec des lookahead et lookbehind (voir ici
http://www.lilhoot.eu/regex-et-preg-assertions-avant-arriere-lookahead-lookbehind-assertions-recuperer-les-chaines,a3
)
Tu peux t'en sortir en utilisant dotnet :
1 - Inclure l'assemblage System dans son projet -> Atelier/.Net/Utiliser un assemblage .Net dans ce projet
2 - Cocher System
avec ce code :
C
haineAtester
est une chaîne
= [
{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Tahoma;}}
{\colortbl ;\red0\green0\blue0;\red64\green85\blue141;\red0\green30\blue196;}
{\*\generator Riched20 10.0.17134}\viewkind4\uc1
\pard\cf1 Elem1\cf2 Hello \cf3 Elem2\par
2nd Liane : \cf3 Elem3\cf2\par
\cf3 Elem4\cf2 3rd\cf3 Elem5\cf2 Line : \cf3 Elem6\cf2\par
4th Line : \cf1 Elem7\cf0\par
}
]
elem
est un
"System.Text.RegularExpressions"
.
Match
dynamique
MyRegexp
est un
"System.Text.RegularExpressions"
.
Regex
(
"(?<=\\cf[13] ).*?(?=\\cf.)"
)
matches
est un
"System.Text.RegularExpressions"
.
MatchCollection
dynamique
=
MyRegexp.Matches
(
C
haineAtester
)
POUR
TOUT
elem
de
matches
Trace
(
elem.Value
)
FIN
j'obtiens ceci :
c'est bien ce que je devais obtenir :
--
Ami calmant, J.P
Informar
2
0
Wahib
#4
Miembro registrado
45 mensajes
Popularité : +2 (2 votes)
Publicado el 20,julio 2018 - 10:28
Super! Un grand merci JP, ça m'est d'une grande aide
Informar
0
0
→ Volver a WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (versiones precedentes)
WEBDEV (versiones precedentes)
WINDEV Mobile (versiones precedentes)
Reports & Queries
Irrelevante
Herramientas
Français
English
Español
Portuguesa
Fermer cette fenêtre
Búsqueda Tipo
Sólo temas
Todos los mensajes
Periodo Buscar
Cualquier fecha
Última hora
Última 24 horas
Última semana
Último mes
Último año
Cancelar
Vista previa del mensaje
Añadiendo una imagen
Importar una imagen desde una URL
Enviar una imagen desde un archivo de su disco
Arrastrar un archivo o click en "Examinar..."
o
Cancelar
0%
WLanguage
SQL
XML, HTML
JAVA, Javascript
Texto