Soy nuevo en TypeScript, quiero quitar la marca de tiempo de un nombre de archivo. Los nombres de archivo pueden ser como FileName_20210210050124592.xml o FileName_20210210050124592_2.xml Solo quiero eliminar la marca de tiempo (quiero mantener el _2 en el segundo nombre de archivo) Esto es lo que he intentado hasta ahora que funciona,
let fileName: string = "FileName_20210210050124592.xml"; let newFileName: string; if((fileName.match(/_/g)||[]).length>1){ newFileName = fileName.replace(/_.*_/, '_'); } else{ newFileName = fileName.replace(/_.*\./, '.'); } console.log(newFileName);¿Hay una mejor manera de hacerlo o puedo mejorar este código?
Debe decidir cómo desea diferenciar una marca de tiempo de un número de archivo.
El siguiente ejemplo asume que una marca de tiempo tendrá al menos 12 dígitos y que un número de archivo tendrá menos que eso:
let fileName = "FileName_20210210050124592.xml"; let newFileName = fileName.replace(/_\d{12}\d*/, ''); console.log(newFileName);