Avatar billede ingeman Juniormester
15. marts 2011 - 12:26 Der er 4 kommentarer og
2 løsninger

Konverter am/pm til 24-timers format

Et script som kan konverterer 4:00am til 24 timers format
Avatar billede majbom Novice
15. marts 2011 - 12:36 #1
måske du skulle starte med at få lukket nogle af de spørgsmål du har liggende. der er nogle helt tilbage fra 2004!
Avatar billede intenz Novice
15. marts 2011 - 13:16 #2
Skal du ikke bare lægge 12 til, hvis tiden er større eller lig 1pm?
Avatar billede olebole Juniormester
15. marts 2011 - 15:18 #3
<ole>

Hvordan skal det bruges - og står det evt. i forbindelse med dag, måned og/eller år?

- og så skal du nok tænke over, hvad splazz skrev. Det ville sikkert øge dine chancer for at få svar på dine spørgsmål  =)

/mvh
</bole>
Avatar billede werd Nybegynder
15. marts 2011 - 15:45 #4
Følgende kunne være en løsning:

function convert(time) {
    var am = time.indexOf('am');
    var pm = time.indexOf('pm');
    var re = /^(\d{1,2}):(\d{2})([ap]m)$/;
    var dele = time.match(re);
    if ((dele)&&(dele[1]>=1&&dele[1]<=12&&dele[2]>=0&&dele[2]<=59)) {
        if (am!=-1) {
            if (dele[1]==12) {
                time = '0:'+dele[2];
            } else {
                time = time.substring(0,am);
            }
        } else if (pm!=-1) {
            if (dele[1]==12) {
                time = time.substring(0,pm);
            } else {
                tal = parseInt(dele[1])+12;
                time = tal+':'+dele[2];
            }
        }
    return=time;
    }
    return '';
}
Avatar billede olebole Juniormester
15. marts 2011 - 15:52 #5
Det kunne også gøres sådan:


function convertTimeFormat(sTime) {
    return sTime.replace(/\b([0-9]{1,2}):([0-9]{1,2})\s?(a|p)m\b/gi, function(a,b,c,d){return (d=="p"?Number(b)+12:b)+":"+c});
}



- men det kommer lidt anpå formatet  =)
Avatar billede olebole Juniormester
15. marts 2011 - 15:56 #6
Ahhh ... havde ikke helt sørget for, at den håndterer både am/pm og AM/PM  =)


function convertTimeFormat(sTime) {
    return sTime.replace(/\b([0-9]{1,2}):([0-9]{1,2})\s?(a|p)m\b/gi,function(a,b,c,d){return (d.toLowerCase()=="p"?Number(b)+12:b)+":"+c});
}

Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester