Las siguientes líneas están presentes en el archivo. Me gustaría extraer datos múltiples de este archivo.extrayendo el valor de un archivo usando ant
Número de usuario actual a construir listas: 23
- tiempo de ejecución 'RevisionBuild' (en minutos) = 8,40
[construir] RC = 0
I utilizó la siguiente expresión regular para recuperar el valor 23 de este archivo
<ac:for param="line" list="${logFileContent}" delimiter="${line.separator}">
<sequential>
<propertyregex property="noOfBuildlists"
input="@{line}"
regexp="(.*)Number of current user build lists: (.*)$"
select="\2"/>
</sequential>
</ac:for>
Pero la misma expresión regular no tiene ningún valor cuando trato de buscar las otras líneas como regexp = "(. ) [revBuild] RC = (.) $" o regexp = "(. ) Tiempo de Run 'RevisionBuild' (en minutos) = (.) $" donde los valores extraídos deben ser 0 y 8,40, respectivamente.
por favor alguien puede ayudar? Gracias , Aarthi
Gracias a ton. Esto funciona muy bien ¿Puedes explicar el uso de \ s *? Observé que usas esta expresión regular cada vez que hay un espacio seguido de un carácter especial (como (o) o = – user1384205
'\ s' representa el carácter de espacio en blanco y' \ s * 'significa cero o más ocurrencias para los caracteres de espacio en blanco. hacer una expresión más robusta y unir incluso si hay más espacios o si no hay ninguno. –
Gracias de nuevo Vaman. Para buscar una cadena "¿Necesita compilar esta lista de compilación: verdadera", probé la siguiente expresión regular ¿Esta lista de compilación necesita compilar: \ s * ([rt] +) $ Sin embargo, la expresión regular no funciona. – user1384205