Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Suchen- / Ersetzen mit Text Item Delimiters

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> OS X-Snippets
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Snow
Administrator
Administrator


Anmeldedatum: 21.11.2000
Beiträge: 1946
Wohnort: Deiningen

BeitragVerfasst am: 17.07.2005 - 10:22    Titel: Suchen- / Ersetzen mit Text Item Delimiters Antworten mit Zitat

Hier eine ausführlichere Version von Suchen/Ersetzen mit AppleScript's text item delimiters.

Das Problem bei der Benutzung der text item delimiters besteht darin, dass wirklich alle Vorkommen des Suchtextes ersetzt werden. Leider aber auch, wenn der Suchtext nur ein Teil eines Wortes ist.

Um die Groß-/Kleinschreibung zu beachten, habe ich 'considering case' verwendet. Das allein grenzt die Treffer schon ein.

Beispiel der Problematik:

Suchwort: Bau
Ersatzwort: XXX

Aus Bau wird richtig XXX

aber

Baumeister wird zu XXXmeister
Bauer wird zu XXXer

Lösung: Zum Suchwort bzw. Ersatzwort werden jeweils ein Zeichen hinzugefügt, dass es als einzelnes Wort abgrenzt - Leerzeichen, Punkt usw.
Aus den Ausgangswerten wird jeweils eine Suchliste und eine Ersatzliste erstellt. Diese Liste wird in einer Schleife abgearbeitet. Es finden also mehrere Suchen-/Ersetzen-Vorgänge statt.

Code:

set Suche to "Bau"
set Ersatz to "XXX"

set SearchList to {Suche & " ", Suche & ".", Suche & ",", ¬
    Suche & ";", Suche & "!", Suche & "?"}
set ErsatZListe to {Ersatz & " ", Ersatz & ".", Ersatz & ",", ¬
    Ersatz & ";", Ersatz & "!", Ersatz & "?"}

set derText to "Es gibt viele Bauarbeiter, die nichts davon halten, literweise Bier in sich hinein zu schütten. In den Bau wandern will keiner.
Bauern haben auf dem Bau nichts zu suchen, schon eher beim Schachspiel. Eine Bauanleitung dazu benötigt man nicht.
Der Bauer ist so schlau und wandert in den Bau.
Baue nie auf Sand - das knirscht so laut.
Bau dir doch ein Schloss. Ich will mir ein Haus bauen. Darum bau ich mir kein Schloss.
"

repeat with i from 1 to count of SearchList
    set sW to item i of SearchList
    
set eW to item i of ErsatZListe
    
set derText to Ersetzen(derText, sW, eW)
end repeat

on Ersetzen(gesamterText, Suchwort, Ersatzwort)
    considering case
        set AppleScript's text item delimiters to Suchwort
        
set TextListe to text items of gesamterText
        
set AppleScript's text item delimiters to Ersatzwort
        
set derText to TextListe as text
        
set AppleScript's text item delimiters to ""
        
return derText
    end considering
end Ersetzen

_________________
Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
Jürgen Venne
•->
•->


Anmeldedatum: 19.08.2005
Beiträge: 14
Wohnort: 46519 Alpen-Veen

BeitragVerfasst am: 19.08.2005 - 07:53    Titel: Antworten mit Zitat

Hallo Snow,

Das klassische Applescript ist ja nicht schlecht, aber wer Platz sparen möchte und nur einen Einzeiler einsetzen möchte, der kann auch mit dem Unix-Tool "sed" arbeiten.
Das folgende Applescript erfüllt den gleichen Zweck, mit dem Unterschied, das alle von Unix als Whitespace und Interpunktionszeichen definierten Zeichen zum tauschen benutzt werden.


--#######################
set Suche to "Bau"
set Ersatz to "XXX"

set derText to "Es gibt viele Bauarbeiter, die nichts davon halten, literweise Bier in sich hinein zu schütten. In den Bau wandern will keiner. Bauern haben auf dem Bau nichts zu suchen, schon eher beim Schachspiel. Eine Bauanleitung dazu benötigt man nicht. Der Bauer ist so schlau und wandert in den Bau. Baue nie auf Sand - das knirscht so laut. Bau dir doch ein Schloss. Ich will mir ein Haus bauen. Darum bau ich mir kein Schloss. Bau, Bau. Bauteil: Bau; Bau?"

do shell script "echo \"" & derText & "\" | sed 's/" & Suche & "\\([[:space:][:punct:]]\\)/" & Ersatz & "\\1/g'"
--########################
_________________
Viele Grüße

Jürgen Venne
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
sdenjuopl148
•---->
•---->


Anmeldedatum: 17.12.2022
Beiträge: 725
Wohnort: New York city

BeitragVerfasst am: 26.03.2023 - 00:11    Titel: Antworten mit Zitat

Fjallraven Kanken Backpack
Valentino Sandals
Air Jordan Shoes
Jordan Shoes
Moncler Jackets
Retro Jordans
Jordan 1
Retro 4 Jordans
Pandora Jewelry
Balenciaga Triple S
Jordan Retro
Adidas NMD
New Jordans
Air Max 95
Pandora Bracelet
Balenciaga
Cheap Jordan Shoes
Nike Outlet
Shoes GGDB
Nike Jordan
Nike Outlet Store Online Shopping
Nike Air Max
Kyrie Shoes
Jordan Sneakers
Jordan 12
Louboutin Shoes
Air Jordan
Air Jordan 11
Jordan 1
Pandora
Pandora Charms
Jordan 13
Jordans Shoes
Jordan 9
Yeezy Shoes
Pandora Charms Canada
Vans Shoes
Ferragamo
Pandora Official Site
Jordan 13s
Air Max 270
Snkrs Nike
Air Jordans
Moncler Coats For Women
Pandora Canada
Nike Shoes For Women
Nike Sale
Yeezy Shoes
Jordans 11
New Nike Shoes
Air Jordan
Red Bottom Shoes
Jordan 5s
Nike Outlet
Air Jordan 1
Louboutin shoes
Jordan 11s
Jordans Sneakers
Nike Air Max 90 Ultra
Cheap Jordan Shoes For Women
Golden Goose Sneakers
Red Bottom Shoes For Women
Yeezy
Jordan Sneakers
Jordan 6 Rings
GGDB
Christian Louboutin Shoes
Air Jordan 12
Jordan Retro 4
Jordan 1 Low
Nike Shoes
Air Jordan Sneakers
Jordan Retro 6
Jordans 11
Jordan Retro 11
Air Jordan Retro 8
Yeezy Shoes
Jordan Retro 1
Lebron Shoes
Adidas Yeezy
Golden Goose Shoes Men
Moncler Vest
Adidas NMD
Jordan 12 Retro
Fitflop Sandals
Pandora
Jordans Sneakers
James Harden Shoes
Jordan 4
Retro Jordans
Nike Shoes
Golden Goose Outlet
Air Jordan
Yeezys Shoes
Nike Outlet
Jordan 11 Red
Air Jordans
Jordan Retro 3
Moncler Jackets Outlet
Moncler
Jordan 6 Retro
Golden Gooses For Sale
Air Jordan 3
Nike Air Force One
Nike Air Max Women
Mens Nike
Hermes Birkin Bag
Christian Louboutin Shoes
Jordan 1
Nike Official
Nike Factory
Adidas Yeezy
Christian Louboutin Heels
Jordan 5 Retro
Jordan 1
Jordan 6 Rings
Jordan Retro 12
Air Jordan 10
Nike Air Max 2018
Pandora
Moncler
Jordan 14
Pandora Official Site
Asics Running Shoes
Nike Outlet
GGDB Sneakers
Christian Louboutin
Air Max 270 Women
Jordan 1s
Air Jordan 11s
Nike Air Max 98
Jordan Retros
Nike Shoes
Jordan 11
Nike Jordan 1
Golden Goose Outlet
Golden Goose Sale
ECCO Shoes For Women
Pandora Ring
Air Jordan 5
Jordans 11
Nike Huarache
Pandora Ring
Golden Goose
Jordan 4
Nike Outlet Store
Jordan 12 Retro
Jordans 2021
Air Jordan 4 Retro
Golden Goose Sneakers
Golden Goose Mid Star
Soccer Cleats
Red Bottom Shoes
Jordan Retro 11
_________________
sdenjuopl148
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> OS X-Snippets Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter