Ver Mensaje Individual
  #4  
Antiguo 11-08-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por strelok Ver Mensaje
Mi idea es hacer una función de Delphi que sea capaz de detectar si existe o no un directorio (y en caso de que exista, debe devolver el nombre del mismo) que se ubique en C:\ y cumpla las siguientes características.

1. [A-Za-z] - [0-9]-> O sea, un nombre cualquiera (mayus o min) seguido de un guion medio y terminando por un número.
Para obtener la lista de directorios que hay "colgando" de uno, puedes usar alguna de las funciones que te ha pasado [oscorm], o también alguna que hay en la sección de trucos del club (por ejemplo este de David).

Para conseguir los que cumplen la condición que necesitas, puedes usar expresiones regulares. La idea es para cada uno de los que obtienes en la lista (todos) ver si el nombre se ajusta a una expresión reguular ([A-Za-z] - [0-9]).

Las expresiones regulares se implementan en la unit/clase (System.RegularExpressions.TRegEx). Aquí tienes la documentación.
En la docwiki también puedes encontrar este ejemplo (que puedes descargar del repositorio de embarcadaero) para utilizar expresiones regulares.

Y si quieres empezar a probar con expresiones regulares, puedes revisar estos links:
http://docwiki.embarcadero.com/RADSt...ar_Expressions
https://stackoverflow.com/questions/...i-using-tregex
https://www.finalbuilder.com/resourc...ar-expressions
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita