txt texto sustituir script reemplazar para linea especiales completa caracteres buscar archivos archivo replace find applescript

replace - texto - sed reemplazar linea completa



AppleScript para buscar y reemplazar conjuntos de cadenas en un archivo seleccionado (1)

Quiero usar AppleScript para buscar y reemplazar texto en un documento elegido. El texto que deseo reemplazar siempre será el mismo, así que quiero establecer algunas variables predefinidas con esa cadena, buscar el documento elegido para esa cadena y reemplazarlo con otra cadena predefinida. Quiero repetir este proceso de búsqueda y reemplazo unas 4 veces (buscando diferentes variables de cadena cada vez) para ese documento. Una vez hecho esto, quiero guardar automáticamente el documento modificado.

¿alguien puede proporcionarme un script simple para hacer esto? esto es lo que tengo hasta ahora ...

tell application "Finder" set theFile to (open for access (choose file with prompt "Select a file to read:")) set txt to (read theFile for (get theFile)) end tell on replaceText(find, replace, subject) set prevTIDs to text item delimiters of AppleScript set text item delimiters of AppleScript to find set subject to text items of subject set text item delimiters of AppleScript to replace set subject to "" & subject set text item delimiters of AppleScript to prevTIDs return subject end replaceText get replaceText("lorem", "ipsum", txt)

el problema es que no está leyendo todo el contenido del archivo (.html). de un párrafo lorem ipsum solo está leyendo "ipsum ipsum dolor sit amet, consectetur adipisicing elit, sed do eius" intenté usar eof en el (obtener el archivo) pero eso tampoco funciona


Sip. :)

set the search_document to (choose file of type "TEXT") replaceText("whatever you want to search for", "whatever you want to replace with", search_document) on replaceText(search_string, replacement_text, this_document) tell application "TextEdit" open this_document set AppleScript''s text item delimiters to the search_string set this_text to the text of the front document as list set AppleScript''s text item delimiters to the replacement_text set the text of the front document to (this_text as string) close this_document saving yes end tell end replaceText

Una advertencia rápida sobre este script, sin embargo. Si fueras a reemplazar cada ocurrencia de la palabra one con la palabra two en un documento que contiene esta cadena ...

If someone added one plus one, what would be the result?

... este sería tu resultado ...

If sometwo added two plus two, what would be the result?

Aparte de eso, no hay nada de qué preocuparse.

Feliz codificación! :)