überflüssige Zeilenumbrüche entfernen

  • 5 Antworten
  • Letztes Antwortdatum
A

AntiGorilla

Fortgeschrittenes Mitglied
2
Hallo,
ich benötige mal wieder etwas Hilfe. Ich habe eine Variable mit beispielsweise folgendem Inhalt:

Code:
Eintrag 1
Eintrag 2
  
Eintrag 3
  
  
Eintrag 4
Eintrag 5
Nun würde ich gerne die doppelten Zeilenumbrüche sowie die Zeilenumbrüche am Anfang und Ende entfernen, außerdem wäre es schön, wenn auch eventuell doppelt vorhandene Einträge entfernt werden könnten. Vor allem die Zeilenumbrüche am Anfang und Ende bereiten mir Probleme, weil die auch nicht immer vorhanden sind. Kennt jemand eine gute Lösung? Vielen Dank :)
 
Hier noch mein Beispieltask:

Code:
A1: Variable Set [ Name:%text To:
Eintrag 1
Eintrag 2

Eintrag 3


Eintrag 4
Eintrag 5
     Do Maths:Off Append:Off ]
A2: Variable Set [ Name:%newline To: Do Maths:Off Append:Off ]
A3: Variable Split [ Name:%text Splitter:%newline Delete Base:Off ]
A4: For [ Variable:%count Items:1:%text(#) ]
A5: Variable Set [ Name:%newtext To:%text(%count) Do Maths:Off Append:On ] If [ %text(%count) !~ /%text(%count) ]
A6: End For
A7: Popup [ Title: Text:%newtext Background Image: Layout:Popup Timeout (Seconds):5 Show Over Keyguard:On ]
Wo liegt der Fehler in der If-Bedingung von A5? Irgendwie steh ich auf dem Schlauch, das müsste doch so funktionieren...
 

Anhänge

  • Test.tsk.xml.txt
    1,5 KB · Aufrufe: 129
Zuletzt bearbeitet:
Hi,

ich hab das Problem über eine temporäre txt-Datei gelöst.

Test (8)
A1: Variable Set [ Name:%text To:
Eintrag 1
Eintrag 2

Eintrag 3


Eintrag 1
Eintrag 4
Do Maths:Off Append:Off ]
A2: Flash [ Text:%text Long:Off ]
A3: Write File [ File:Test.txt Text:%text Append:Off Add Newline:Off ]
A4: Read Line [ File:Test.txt Line: To Var:%line ]
A5: Write File [ File:Newtext.txt Text:%line Append:On Add Newline:On ] If [ %line !~ EOF ]
A6: Goto [ Type:Action Number Number:4 Label: ] If [ %line !~ EOF ]
A7: Read File [ File:Newtext.txt To Var:%newtext ]
A8: Flash [ Text:%newtext Long:Off ]



Gruß

Chillmann
 

Anhänge

  • Test.tsk.xml.txt
    1,6 KB · Aufrufe: 151
Zuletzt bearbeitet:
Danke :)
Siehst du den Fehler in meinem Beispiel oben? Ich dachte eigentlich, dass der Querstrich / die Ersetzung der Variable verhindert und man daduch prüfen könnte, ob die Variable einen Wert hat, aber das scheint so doch nicht zu funktionieren.
If [ %text(%count) !~ /%text(%count) ]

PS: Was bewirkt das Long bei Flash [ Text:%newtext Long:Off ] ? Konnte noch nie einen Unterschied feststellen wenn ich das aktiviert habe.
 
Ich hab ja zu Beginn auch versucht auf deinem Ansatz aufbauend weiter zu machen. Bei der Split Anweisung hat es ausgerichtet den splitter auf optional zu lassen. Für die if-Bedingung hab ich es mit if [%text(%count) !~ %text*] versucht, aber die erste leere Zeile hat immer den Eintrag %text1 produziert. Keine Ahnung wieso das nicht aussortiert wird.
Außerdem wurden logischerweise auch die Leerzeichen zwischen dem Eintrag und der Nummerierung entfernt.

Die Option "Long" lässt die Flash-Mitteilung länger eingeblendet. Ich finde der Unterschied ist recht deutlich.


Gruß

Chillmann
 
Zuletzt bearbeitet:
Dann bin ich ja beruhigt, dass nicht nur ich Tasker nicht immer verstehe :D
Dadurch, dass ich als Splitter den Zeilenumbruch angegeben habe, blieben die Leerzeichen aber erhalten.
 

Ähnliche Themen

M
  • Mobistel
Antworten
1
Aufrufe
526
qwoka
qwoka
Sitara Aci La Rose
Antworten
2
Aufrufe
696
Sitara Aci La Rose
Sitara Aci La Rose
G
Antworten
1
Aufrufe
681
cad
cad
Zurück
Oben Unten