Questo è un lavoro per i delimitatori di elementi di testo. Se non sei familiare, un delimitatore è un separatore, normalmente tra le parole il separatore è uno spazio. Con i delimitatori degli elementi di testo, è possibile modificare lo spazio normale in qualsiasi valore di testo desiderato. In questo caso, dovresti rendere "{keyword1}" i delimitatori di testo, quindi lo script vedrà il testo originale come solo due parole, tutto prima di "Keyword1" e dopo tutto è la seconda parola. Quindi imposti i delimitatori di elementi di testo in qualsiasi modo desideri sostituire "{keyword1}" con e racchiudere le due parole in un elemento di testo.
Ho scritto un codice base che fa quello che chiedi qui sotto, con alcuni commenti in linea. Una nota, ogni volta che si gioca con delimitatori di elementi di testo, termina sempre lo script riportandoli al valore predefinito. Ho memorizzato i delimitatori di testo originali in una variabile chiamata "tid", quindi li ho reimpostati alla fine dello script.
--Set the variables
set originalText to "http://www.thedomain.com/ajdkeial.html?keyword1={keyword1}&keyword2={keyword2}"
set key1 to "{keyword1}"
set key2 to "{keyword2}"
set subKey1 to "NewKeyWord"
set subKey2 to "AnotherKeyWord"
--Main Script
set tid to text item delimiters
set text item delimiters to key1
set tempList to every text item of originalText
(* the line above returns two item, everything before {keword1} and the second item is everything after {keyword1} *)
set text item delimiters to subKey1
set newText to every item of tempList as text
(* The line above takes the two items from tempList and puts the replacement key word between them *)
--Below, do the same for the second keyword
set text item delimiters to key2
set tempList to every text item of newText
set text item delimiters to subKey2
set newText to every item of tempList as text
set text item delimiters to tid
return newText --> "http://www.thedomain.com/ajdkeial.html?keyword1=NewKeyWord&keyword2=AnotherKeyWord"