how to validate UTC format date

Viewed 168

Can you help me how to write a regular expression for the below format?

"2020-02-07 15:45:25.763437 UTC+0000"

my rex should accept the below format also: "2020-02-07 15:45:25"

I found how to find the "2020-02-07 15:45:25" but I don't know how I can make the second part optional? can you help me to figure it out, please?

^([0-9]{4})-([0-1][0-9])-([0-3][0-9])\s([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])$

I am coding in typescript.

1 Answers

I solve my issue by using below expression:

let regexpEmail =   new RegExp('^([0-9]{4})-([0-1][0-9])-([0-3][0-9]) ([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9]).?([0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?)( ([UTC])\\+[0-9][0-9][0-9][0-9])?$');
console.log("R1:" + regexpEmail.test('2020-02-07 15:45:25.763437 UTC+0000'));//"R1:true"
console.log("R2:" + regexpEmail.test('2020-02-07 15:45:25.763437')); //"R2:true" 
console.log("R3:" + regexpEmail.test('2020-02-07 15:45:25.763437 UTC+'));//"R3:false"
console.log("R4:" + regexpEmail.test('2020-02-07 15:45:25.7'));//"R4:true" 
console.log("R5:" + regexpEmail.test('2020-02-07 15:45:25'));//"R5:true" 
console.log("R6:" + regexpEmail.test('2020-02-07 15:45:25.763437 '));//"R6:false"
console.log("R7:" + regexpEmail.test('2020-02-07 15:45:25.'));//"R7:true"
console.log("R8:" + regexpEmail.test('2020-02-07'));//"R8:false"
console.log("R9:" + regexpEmail.test('2020-02-07 15:45'));//"R9:false"
console.log("R10:" + regexpEmail.test('2020-02-07 15:45:9'));//"R10:false"

I hope someone else finds it useful.

Related