0 votos

La sustitución de texto con acortado la fecha y la hora

-- functions

-- replace characters
on replace_chars(this_text, search_string, replacement_string)
    set AppleScript's text item delimiters to the search_string
    set the item_list to every text item of this_text
    set AppleScript's text item delimiters to the replacement_string
    set this_text to the item_list as string
    set AppleScript's text item delimiters to ""
    return this_text
end replace_chars

-- split text

on splitText(theText, theDelimiter)
    set AppleScript's text item delimiters to theDelimiter
    set theTextItems to every text item of theText
    set AppleScript's text item delimiters to ""
    return theTextItems
end splitText


-- Actions

-- Action 1: Replace the word TIME with the Date and Time.

set shortDate to weekday & ", " & month & " " & days & " at "
set shortTime to hours & ":" & minutes

set pasteboard to the clipboard

set datePrint to shortDate & " at " & shortTime

set finalProduct to replace_chars(pasteboard, "TIME", datePrint)

set the clipboard to finalProduct

De esta forma se copia nada en el portapapeles. Mientras que si usted cambie las siguientes

set shortDate to date string of (current date)
set shortTime to time string of (current date)

Yo devueltas "jueves, 24 de Mayo de 2018 a las 1:42:47 PM"

Mi objetivo final es reemplazar la palabra "TIEMPO" con la Fecha "sin año" & "" & "Tiempo sin los segundos"

También me gustaría encontrar alguna manera para mantener el AM o PM aspecto de siempre, pero que sólo podría ser más fácil de encontrar alguna manera de recortar de que la última sección.

Cualquier entrada de todo esto sería genial. Si hay alguien que tiene una idea de por qué el primer conjunto de código no funciona, pero en el segundo set me encantaría escucharlo.

1voto

bresc Puntos 618

Debe ser como esto:

set curr to current date
set dateprint to curr's weekday & ", " & curr's month & " " & curr's day & ¬
" at " & curr's hours & ":" & curr's minutes as string

O para cumplir con su objetivo real:

tell date string of (current date)
set ds to text 1 thru -7
end tell
tell time string of (current date)
set ts to text 1 thru -7 & text -3 thru -1
end tell
set dateprint to ds & " at " & ts as string

Desde AppleScript no es sensible a mayúsculas y minúsculas su guión se sustituye también el "time" o "Tiempo" ... por lo que tendrá la consideración de declaración:

considering case
set theTime to "TIME"
set finalProduct to replace_chars(pasteboard, theTime, datePrint)
end considering 

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X