Zum Inhalt springen

bloodybastard

Mitglieder
  • Gesamte Inhalte

    15
  • Benutzer seit

  • Letzter Besuch

  1. Das m liegt im Orginal - Quellcode des Shop - Sytsems vor, daran sollte es also nicht liegen. Bei einem Test eben ist aber noch ein weiterer Fehler aufgetreten. lc und uc verhalten sich genau anders herum, gleiches gilt auch für ucfirst und lcfirst. Laut der locale Dokumentation von Perl ist hier bei FreeBSD die Variable LC_CTYPE verantwortlich dafür. Ich denke dort ist der Fehler zu suchen. Grüße, BB
  2. Hmm ok, fang ich am besten mal von vorn an. Fakten : Perl in Version 5.8.5 liegt vor FreeBSD in Version 4.7 Bei der Software handelt es sich um ein Shop - Sytsem, das mit Perl zusammenarbeitet, bzw. dessen Module zum Teil in Perl geschrieben wurden. Das Shop - Sytsem verwendet für die Suche nach Artikelinformationen einen RegEx und hängt ein i an den Ausdruck, wenn die Suche Groß- und Kleinschreibung ignorieren soll. Der RegEx wird dann zusammen mit einem use locale in einem eval - Block hinterlegt. Folglich sollte man das Verhalten der Suche mit einem eigenen RegEx nachbilden können und die selben Ergebnisse erhalten. Beispiel - Skript : --snip-- #!/usr/bin/perl use locale; my $file = '/data/foo.txt'; my $pushkin_small = 'ïóøêèí'; my $pushkin_normal = 'Ãóøêèí'; my $data = LoadFile($file); my $count_normal = 0; my $count_small = 0; foreach my $line (@{$data}) { $count_normal++ if ($line =~ /$pushkin_normal/isg); $count_small++ if ($line =~ /$pushkin_small/isg); } print "Match for small : $count_small\n"; print "Match for normal : $count_normal\n\n"; exit(0); sub LoadFile { my $file = shift(@_); my @value = (); open(FILE, "<$file"); @value = <FILE>; close(FILE); chomp(@value); return \@value; } --snap-- Anmerkung : LC_CTYPE und LC_COLLATE sind auf ru_RU.KOI8-R gesetzt Gehen wir mal davon aus das das Wort Pushkin in 30 Zeilen der Datei /data/foo.txt vorkommt, so müßte mir als Ergebnis für beide Zähler jeweils 30 rauskommen. In wirklichkeit erhalte ich ein Ergebnis das wie folgt aussieht : Match for small : 9 Match for normal : 30 Die Frage ist jetzt, ob die Ursache des Problems bei Perl, oder im OS zu suchen ist. Grüße, BB P.S.: Ich habe das ganze auch auf ein FreeBSD 4.10 getestet, mit dem gleichen Ergebnis. Laut Aussagen eines der Beteiligten lief das ganze bereits mal unter FreeBSD 4.7 ohne Fehler.
  3. Hallo dummabua. Also gesucht wird nach russischen Zeichen. Wobei der RegEx das Wort findet, aber wie besagt zwischen Groß- und Kleinschreibung unterscheidet. Was deinen Link angeht, kann der mir leider nicht helfen, da der RegEx sich in einer Fremdsoftware befindet. In der Software wird mit use locale geabreitet. Grüße, BB
  4. Hallo. Ich habe ein nettes kleines Problem zu Perl, RegEx und anderen Zeichensätzen. Hier erstmal die Ausgangssituation : In einer Text - Datei befinden sich russiche Texte (kein Unicode). Diese Texte sollen über einen RegEx Zeilenweise durchsucht werden, wobei Groß- und Kleinschreibung ignoriert werden ( Flag i am Ende der RegEx). Das Problem ist nun das Perl trotzdem zwischen Groß- und Kleinschreibung unterscheidet, obwohl die local - Settings für den Nutzer auf die entsprechenden Zeichensätze für POSIX gesetzt wurden und der RegEx wie oben beschrieben das Flag i hat. Perl Interpreter liegt in der Version 5.8.5 vor, System ist FreeBSD 4.7. Hat jemand von euch eine Idee, woran es liegen könnte? Vielen Dank schon mal im Voraus, BB
  5. Vielen Dank für eure Hilfe, das hat mir wirklich weiter geholfen ) Grüsse BB
  6. Moin, ich bin im Internet auf folgende Seite gestossen : Iana.org Wenn ich das recht verstehe gibt es Portbereiche die für Firmen reserviert sind und wiederrum andere die für private Zwecke zur Verfügung stehen. Was ist, wenn ich nun ein Programm schreibe welches über das Netzwerk arbeitet, welche Ports muss oder darf ich dann verwenden? Grüsse BB
  7. Hi, das Problem wurde gelöst Grüsse BB
  8. Hi, ich hatte teilweise die Vermutung das es mit den Exceptions zusammen hängen könnte die bei manchen Funktionen auftreten (die aber auch abgefangen werden). Tatsächlich treten diese Aussetzer öfters auf, wenn eine Exception ausgelöst wird. Grüsse BB
  9. Moin, ich habe ab und zu das Problem, das sich Programme ab und zu ohne jeden Grund aufhängen. Drückt man dann Strg + C laufen die dann normal weiter. Hat jemand von euch schon mal dieses Problem gehabt? Grüsse BB
  10. Hi, ich versuche zur Zeit in mehreren Zellen einer JTable JButtons zu integrieren. Mein Problem ist das dies Teilweise funktioniert und teilweise nur der String jedes Buttons angezeigt wird Ausserdem habe ich das Problem das ich es nicht schaffe diese Buttons zu drücken (optisch) und auch kein ActionEvent abgefeuert wird. Kann mir da jemand von euch weiter helfen?? Grüsse BB
  11. Hi, ich habe da ein Perl-Skript zur Verwaltung meines Servers. Ich baue nun mit dem Net-SSH-Modul eine Verbindung zu dem Server auf und leite über die Option $ssh->shell meinen STDIN zum Server weiter. Mein Problem ist nun, wie ich den STDOUT des Server auffangen kann. In der Beschreibung dieses Moduls steht hierzu leider überhaupt nichts. Ich habe den Debug-Modus bei der Verbindung aktiviert, doch wie es aussieht kommt er gar nicht mehr dazu meine Befehle zu übertragen. Hat jemand schon mal mit dem Modul gearbeitet? Wenn ja, kann mir da jemand weiter helfen? Grüsse BB
  12. Hi, also die Sprache ist wirklich Perl, hatte das ganz vergessen zu erwähnen Zu deiner Frage warum ich das wieder einlesen will was das Script selbst ausgibt klingt ja in ersten augenblick komisch, aber es hat seinen Grund. Ich arbeite zur Zeit mit einem Modul, das sich direkt an meinen STDIN hängt, ich aber die Befehle die es ausführen soll direkt im Quellcode implementiert habe. Folglich muss ich das was ich selbst ausgebe in den STDIN umleiten, weil das Modul sich nicht mit den STDOUT verbinden möchte. Grüsse BB
  13. Hi, ist es möglich den STDOUT eines Scriptes in dessen eigenen STDIN umzulenken? Grüsse BB
  14. Hi, danke für eure Hilfe, ich werde das ganze dann mal austesten. MfG BB
  15. Hi, ich suche nach Möglichkeiten um zu kontrollieren, ob ein Datensatz in einer mySQL-Tabelle existiert. Bisher habe ich das immer über den Weg gemacht, das ich mit SELECT a,b,c FROM d WHERE a='e' AND b='f' AND c='g' mir alle Datensätze habe ausgeben lassen, die den Where-Bedingungen entsprechen. Wenn kein Datensatz existiert verursacht das leider bei einigen Programmiersprechen ein Exception. Da ich das als unsaubere Art empfinde (ich kann mich auch täuschen), suche ich nun nach einer Methode wo ich definitiv einen Wert zurück erhalte (0 oder 1). Ich habe in der mySQL-Doku von EXITS gelesen, aber immer nur im Zusammenhang von Tabellen (, oder Datenbanken). Kann man das auch auf Datensätze anwenden? Gibt es vielleicht andere Möglichkeiten eine solche Abfrage zu realisieren? MfG BB

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...