Var in Tasker Suchen Ersetzen Hilfe

rtwl

rtwl

Dauergast
1.383
Ich habe eine Variable %Temp
Diese bekomme ich von einer .json Datei und sieht zb so aus "21.6"

Ich möchte jetzt gerne den Punkt suchen und mit eine Komma ersetzen.

Mit dem Task "Variable Suchen Ersetzen" funktioniert es leider nicht.
Wenn ich nach "." suche und ersetze mit "," kommt folgendes raus: ",,,,"
Wenn ich zB nach ".6" suche und ersetze mit ",6" kommt das korrekte Ergebniss "21,6" raus.

Warum funktioniert es mit dem Punkt alleine nicht? Da ich 10 Sensordaten (Variablen) habe, möchte ich nicht für jeden alle 10 Nachkommastellen in je einen Suchen Ersetzen Task packen.

Oder gibt es eine andere Möglichkeit ohne Suchen Ersetzen den Punkt auf ein Komma zu tauschen?
Vielen Dank schonmal
 
"Variable Suchen Ersetzen" ist eine RegEx-Suche.
Der Punkt steht bei RegEx für ein beliebiges Zeichen, daher bekommst du als Resultat auch ,,,,
Um nach einem Punkt zu suchen musst du mit \. suchen.
Hier noch eine Kurzübersicht über RegEx
Reguläre Ausdrücke (RegEx) - Kurzübersicht | AutoHotkey
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: rtwl
Perfekt!
Vielen Dank
 
Kann mir jemand bezüglich der RegEx-Formulierung helfen?

Ich habe eine Var. mit Inhalt

belibige Nummer - Ein Name1 - Ein Gebäude1
belibige Nummer - Ein Name2 - Ein Gebäude2
belibige Nummer - Ein Name3 - Ein Gebäude3

die Liste hat verschiedene Namen und Verschiedene Gebäude, mitunter auch doppelte Namen und Gebäude.

Ich möchte jetzt die Möglichkeit haben nach dem Namen und/oder nach dem Gebäude zu Suchen abhänging von groß/kleinschreibung
die suche soll von unten (Gebäude 3) starten nach oben, weil in die Variable der aktuellste Wert ganz unten steht.

Ausgegeben haben möchte ich dann im Idealfall die ganze Zeile.

Leider hat jeder versuch meinerseits eine leere ausgabevariable zu folge.

ich habe es Versucht mit
Variable: %Verzeichniss
Suche: im).*beate.* (und viele viele andere RegEx-befehle)
Ignore Case [ ]
Multi-Line [X]
One Match Only [X]
Übereinstimmung Speichern in:
%VerzeichnissErg
 
Am einfachsten geht es mit "Variable Aufteilen". Als Teiler machst du einfach einen neuen Absatz. Damit erhält man ein Array von %verzeichnis (%verzeichnis1, %verzeichnis2,...) von den einzelnen Zeilen. Mit "Array Process" und Typ "Reverse" wird die Reihenfolge umgekehrt.
Wenn von der Zeile dann noch die einzelnen Infos benötigt werden, kann nochmals mit "Variable Teilen" (Teiler - ) aufgeteilt werden. Bei %verzeichnis1 sind es dann die Variablen %verzeichnis11, %verzeichnis12 und %verzeichnis13.
Wenn mit Globalen Variablen gearbeitet wird muss vor dem ersten Variable Aufteilen das Array %Verzeichnis gelöscht werden.
 
Danke schonmal für Deine Antwort aber ich suche ja nicht immer die Letzte Zeile. Die Liste wird ständig erweitert und die suchbegriffe sind immer andere. wenn ich da jetzt haufen an aufgeteilten einzelne begriffen habe, wie such ich daraus dann das das Richtige? ich finde suche und ersetze schon ganz sinnvoll nur Sucht es mir bei (wie im beispiel beate) nur beate wenn sie im text so vor kommt. wird sie Beate geschrieben funktioniert die suche nicht mehr. gebe ich als suchmuster i), m), im) oder der gleichen ein, um ddie groß/kleinschreibung zu ignorieren, findet es nichts
 
Die Optionen im) kannst du weglassen.
Bei Ignore Case noch den Haken setzen (Gross-/Kleinschreibung ignorieren)
Das Ergebnis wird nicht in der Variable %VerzichnissErg gespeichert sondern im Array %VerzeichnissErg(1)

Variable: %Verzeichniss
Suche: .*beate.*
Ignore Case [X]
Multi-Line [X]
One Match Only [X]
Übereinstimmung Speichern in:
%VerzeichnissErg
 
Danke das klappt soweit. hab nur das Problem das er bei der Suche/ersetze "festhängt". er macht den task bis dahin aber dann nicht mehr weiter. der Haken "Task weiter nach Fehler" hab ich auch schon gesetzt, trotzdem das gleiche Ergebnis das ich den Task immer manuell beenden muss, weil er dort stehen bleibt.
 

Ähnliche Themen

marspoki
Antworten
3
Aufrufe
396
Mathens
Mathens
H
  • Hastenichgesehen
Antworten
2
Aufrufe
159
Hastenichgesehen
H
Viper73
Antworten
1
Aufrufe
223
Cecoupeter
Cecoupeter
Zurück
Oben Unten