Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Typescript Replace a string between two characters within a string

I am new to typescript, I want to strip the timestamp from a file name.
Filenames can be like
FileName_20210210050124592.xml or FileName_20210210050124592_2.xml
I only want to remove the timestamp (I want to keep the _2 in the second filename)
This is what I have tried so far which works,

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);

Is there a better way to do it or can I improve this code?

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

>Solution :

You need to decide how you want to differentiate a timestamp from a file number.

The example below assumes that a timestamp will have at least 12 digits and that a file number will have less than that:

let fileName = "FileName_20210210050124592.xml";
let newFileName = fileName.replace(/_\d{12}\d*/, '');
console.log(newFileName);
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading