Tengo un servicio de Automator que se compone de una única acción "Ejecutar AppleScript" . El servicio recibe seleccionado text
en any application
.
El Servicio incorpora este texto seleccionado en un formato de URL predeterminado. El Servicio luego abre la URL recién ensamblada en una nueva pestaña en una ventana del navegador web.
Aquí hay una cadena que el Servicio podría recibir:
¡Mi planta está muerta! (Pero, ¿a quién le importa? Tengo 12 plantas.)
Quiero usar AppleScript para eliminar todos y cada uno de los símbolos de puntuación que existen en la cadena, incluidos los espacios. También necesito que la cadena se convierta a todos los caracteres en minúscula. Los números no deben eliminarse de la cadena.
Entonces, la cadena deseada es:
myplantsdeadbutwhocaresihave12plants
Comprendo que puedo lograr el efecto deseado al escribir una declaración individual text item delimiters
para cada posible símbolo de puntuación y para 26 letras mayúsculas. Podría usar una sub-rutina replace_characters
para hacer este método un poco más limpio.
¿Existe una forma más fácil o más corta de lograr este efecto en AppleScript, en lugar de usar docenas de bloques text item delimiters
? Por ejemplo, ¿una línea de código que reduce una cadena a letras?
Sé que otros lenguajes de programación tienen un método abreviado de "puntuación", por lo que pregunto.
Esto es, esencialmente, una pregunta "Code Golf" específica de AppleScript.