- Beiträge: 7
Entfernen von nicht druckbaren Zeichen
- Achim Federle
- Autor
- Offline
- Benutzer
Weniger
Mehr
14 Jahre 2 Wochen her #220
von Achim Federle
Entfernen von nicht druckbaren Zeichen wurde erstellt von Achim Federle
Hallo Herr Stark,
ich importiere regelmäßig Exceldateien in denen sich nicht druckbare Zeichen befinden. Gibt es eine Möglichkeit mit dem FlowHeater diese beim Import zu entfernen. Unter Excel gibt es die Funktion "säubern", aufgrund der hohen Anzahl an Datensätzen ist diese Funktion für mich aber nicht praktikabel.
Mit besten Grüßen
Achim Federle
ich importiere regelmäßig Exceldateien in denen sich nicht druckbare Zeichen befinden. Gibt es eine Möglichkeit mit dem FlowHeater diese beim Import zu entfernen. Unter Excel gibt es die Funktion "säubern", aufgrund der hohen Anzahl an Datensätzen ist diese Funktion für mich aber nicht praktikabel.
Mit besten Grüßen
Achim Federle
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
14 Jahre 1 Woche her #222
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Aw: Entfernen von nicht druckbaren Zeichen
Hallo Herr Federle,
das können Sie mit dem .NET Script Heater sowie u.s. Skript Code durchführen.
Sie müssen für jedes Excel Feld, das nicht druckbare Zeichen enthalten kann, einen .NET Script Heater auf den Designer ziehen. Kopieren Sie dann den u.s. Skript Code hinein und verbinden das Excel Feld mit dem Eingang des .NET Script Heaters sowie den Ausgang mit dem zugehörigen Feld der WRITE Seite.
Das Skript Filtert alle Zeichen aus der eingehenden Zeichenkette (String) heraus. Ich denke es sollten alle gängigen Zeichen berücksichtigt werden.
z.Zt. werden erkannt.
- Alle Buchstaben und Zahlen
- Sowie Sonderzeichen (siehe Kommentar im Skript)
Sollten Zeichen Fehlen, die nicht ersetzt/gelöscht werden sollen, brauchen Sie diese Zeichen nur im Skript bei Sonderzeichen, zwischen den Hochkommas“ mit eintragen. (siehe Kommentar im Skript)
Hinweis: Das Skript verwendet Regular Expressions (Regex) und läuft daher erst ab FlowHeater Version 1.2.6. Weitere Infos dazu entnehmen Sie bitte den ReleaseNotes zur Version 1.2.6 .
das können Sie mit dem .NET Script Heater sowie u.s. Skript Code durchführen.
Sie müssen für jedes Excel Feld, das nicht druckbare Zeichen enthalten kann, einen .NET Script Heater auf den Designer ziehen. Kopieren Sie dann den u.s. Skript Code hinein und verbinden das Excel Feld mit dem Eingang des .NET Script Heaters sowie den Ausgang mit dem zugehörigen Feld der WRITE Seite.
Das Skript Filtert alle Zeichen aus der eingehenden Zeichenkette (String) heraus. Ich denke es sollten alle gängigen Zeichen berücksichtigt werden.
z.Zt. werden erkannt.
- Alle Buchstaben und Zahlen
- Sowie Sonderzeichen (siehe Kommentar im Skript)
Sollten Zeichen Fehlen, die nicht ersetzt/gelöscht werden sollen, brauchen Sie diese Zeichen nur im Skript bei Sonderzeichen, zwischen den Hochkommas“ mit eintragen. (siehe Kommentar im Skript)
Hinweis: Das Skript verwendet Regular Expressions (Regex) und läuft daher erst ab FlowHeater Version 1.2.6. Weitere Infos dazu entnehmen Sie bitte den ReleaseNotes zur Version 1.2.6 .
Code:
public object DoWork()
{
string ersetzen_durch = ""; // = wird aus der Zeichenkette entfernt
// string ersetzen_durch = " "; // = wird mit Leerzeichen ersetzt
// falls Zeichen fehlen sollten hier die zusätzlichen Sonderzeichen eintragen
// die nicht ersetzt werden sollen
string sonderzeichen = "\\[\\]!ß´#\"$§%&' ()*+€,-./:;<=>?@\\^_`{|}~";
Regex myRegex = new Regex(@"[^\w\d" + sonderzeichen + "]");
return myRegex.Replace((string)InValues[0].GetString(), ersetzen_durch);
}
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Achim Federle
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 7
14 Jahre 1 Woche her #223
von Achim Federle
Achim Federle antwortete auf Aw: Entfernen von nicht druckbaren Zeichen
Hallo Herr Stark,
vielen Dank für das Script. Ich habe es ausprobiert, es funktioniert.
Allerdings erhalte ich bei lehren Feldern eine Fehlermeldung "Der Wert darf nicht Null sein...."
Ich habe einen Bildschirmausdruck angefügt.
Können Sie mir dazu bitte einen Lösungsvorschlag mitteilen.
Mit besten Grüßen
Achim Federle
vielen Dank für das Script. Ich habe es ausprobiert, es funktioniert.
Allerdings erhalte ich bei lehren Feldern eine Fehlermeldung "Der Wert darf nicht Null sein...."
Ich habe einen Bildschirmausdruck angefügt.
Können Sie mir dazu bitte einen Lösungsvorschlag mitteilen.
Mit besten Grüßen
Achim Federle
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
14 Jahre 1 Woche her #225
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Aw: Entfernen von nicht druckbaren Zeichen
Hallo Herr Federle,
anbei ein modifiziertes Skript, das auch mit Leeren Feldern umgehen kann.
anbei ein modifiziertes Skript, das auch mit Leeren Feldern umgehen kann.
Code:
public object DoWork()
{
object invalue = InValues[0].GetValue();
if (invalue == null)
{
// Wenn keine Wert vorhanden, nichts weiter tun!
return invalue;
}
string ersetzen_durch = ""; // = wird aus der Zeichenkette entfernt
// string ersetzen_durch = " "; // = wird mit Leerzeichen ersetzt
// falls Zeichen fehlen sollten hier die zusätzlichen Sonderzeichen eintragen
// die nicht ersetzt werden sollen
string sonderzeichen = "\\[\\]!ß´#\"$§%&' ()*+€,-./:;<=>?@\\^_`{|}~";
Regex myRegex = new Regex(@"[^\w\d" + sonderzeichen + "]");
return myRegex.Replace((string)invalue, ersetzen_durch);
}
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Rainer Warth
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 3
14 Jahre 1 Woche her #226
von Rainer Warth
Rainer Warth antwortete auf Aw: Entfernen von nicht druckbaren Zeichen
Hallo, das Script kommt zu rechten Zeit. Es hat auch mir geholfen.
Vielen Dank, Rainer Warth
Vielen Dank, Rainer Warth
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Achim Federle
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 7
14 Jahre 1 Woche her #227
von Achim Federle
Achim Federle antwortete auf Aw: Entfernen von nicht druckbaren Zeichen
Hallo Herr Stark,
ich hab das neue Script ausprobiert, es funktioniert.
Damit wird mir zukünfig einiges an Arbeit erspart.
Vielen Dank
Mit besten Grüßen
Achim Federle
ich hab das neue Script ausprobiert, es funktioniert.
Damit wird mir zukünfig einiges an Arbeit erspart.
Vielen Dank
Mit besten Grüßen
Achim Federle
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
14 Jahre 1 Woche her #228
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Aw: Entfernen von nicht druckbaren Zeichen
kurzer Nachtrag
Das Skript wurde noch um Tabulatoren sowie Zeilenumbrüche (newline) Zeichen erweitert, so dass diese nicht gefiltert werden.
Hier das komplette Skript noch einmal.
Das Skript wurde noch um Tabulatoren sowie Zeilenumbrüche (newline) Zeichen erweitert, so dass diese nicht gefiltert werden.
Hier das komplette Skript noch einmal.
Code:
public object DoWork()
{
object invalue = InValues[0].GetValue();
if (invalue == null)
{
// Wenn keine Wert vorhanden, nichts weiter tun!
return invalue;
}
string ersetzen_durch = ""; // = wird aus der Zeichenkette entfernt
// string ersetzen_durch = " "; // = wird mit Leerzeichen ersetzt
// falls Zeichen fehlen sollten hier die zusätzlichen Sonderzeichen eintragen
// die nicht ersetzt werden sollen
string sonderzeichen = "\t\n\r\\[\\]!ß´#\"$§%&' ()*+€,-./:;<=>?@\\^_`{|}~";
Regex myRegex = new Regex(@"[^\w\d" + sonderzeichen + "]");
return myRegex.Replace((string)invalue, ersetzen_durch);
}
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.290 Sekunden