patrón de expresiones regulares en VB6
Frecuentes
Visto 545 veces
1
Necesito extraer RXXX, LXXX y CXXX de estas cadenas
TCK; PCIEX16.A5 R2.1 |TCC
TCK; R2.1 |TCC
aquí está mi código de patrón de expresiones regulares en VB6
myRegExp.Pattern = "\s[RLC][0-9]{1,5}.\.1"
pero cuando yo
Set myMatches = myRegExp.Execute(" TCK; R2.1 |TCK")
myMatches.count es 0
y Cuando la cadena es TCK; R20.1 |TCC
myRegExp.Pattern = "\s[RLC][0-9]{1,5}.\.1"
coincide correctamente con R20.1, ¿cómo debo implementar correctamente este usando expresiones regulares?
gracias
2 Respuestas
1
Su patrón RegEx está bien, excepto por un punto extra. Cambie el patrón RegEx a
myRegExp.Pattern = "\s[RLC][0-9]{1,5}\.1"
contestado el 03 de mayo de 12 a las 07:05
1
El punto único coincide con cualquier carácter. Entonces tu expresión regular falla en R2.1
porque
[RLC][0-9]{1,5}
cerillasR2
- el punto coincide
.
- el punto literal
\.
no logra coincidir con el1
.
Esto no es un problema con R20.1
, aunque:
[RLC][0-9]{1,5}
cerillasR2
- el punto coincide
0
- el punto literal
\.
cerillas.
- el literal
1
cerillas1
.
Simplemente elimine el punto sin escape:
myRegExp.Pattern = "\s[RLC][0-9]{1,5}\.1"
contestado el 03 de mayo de 12 a las 07:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas regex vb6 or haz tu propia pregunta.