Schrift
[thread]8432[/thread]

letzte Spalte in jeder zeile ändern: die zahlen durch best. zahl teilen (Seite 3)



<< |< 1 2 3 4 5 6 >| >> 58 Einträge, 6 Seiten
renee
 2006-10-19 12:24
#70945 #70945
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Wie gesagt, wenn es am Ende einer Zeile ist, dann bei split einfach ein Limit setzen und dann brauch man nichts tausendmal zu überprüfen ob es definiert ist und wenn ja ob es tatsächlich eine Zahl ist!

Das Problem ist ja eh gegessen wenn die Daten mit Semikolon getrennt sind.!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
renee
 2006-10-19 12:27
#70946 #70946
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Sabrina, Du musst schon Daten posten, wie sie in das Programm kommen und nicht wie sie rauskommen. Du sprichst immer nur von CODE, ohne zu zeigen was Du tatsächlich gemacht hast.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
sabrina
 2006-10-19 12:44
#70947 #70947
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
rein kommen sie so:
Code: (dl )
Sabrina Gehring    BLUBB\ge3fr   32 016   85   5.7.2006   16:45 5.7.2006  16:45

raus auf dem Bildschirm also nur das erste OPEN dieses CODES den ich oben mal gepostet hab:
Code: (dl )
Sabrina Gehring BLUBB ge3fr 32 016

nach dem unteren Teil des CODES also dem zweiten OPEN wird eine neue Datei geöffnet in der Folgendes steht:
Code: (dl )
Sabrina;Gehring;BLUBB;ge3fr;32 016;50
so sehen meine Inputs und Outputs aus.
es tut mir leid das ich mich so umständlich ausgedrückt habe.
Hab schon lange nicht mehr mit dem CODE gearbeitet hab zwischen durch noch andere CODE/Scripte geschrieben und dann ist mir aufgefallen das die angaben in einer Datei in MB und in einer anderen in KB stehen.

@opi jetzt fällt mir auch wieder ein warum die 5 dasteht, es sind mehr als 5 Spaten im Input und deshalb sollte es begrenzt werden auf die ersten 5 und wenn ich es nach deinem Code schreibe kommen bestimmt die anderen falschen zahlen dazu siehe oben gepostete Input und Output.
ich hoffe hab mich diesmal einigermassen eindeutig ausgedrückt? wenn nicht bitte nachfragen.

@renee wie meinst du was ich gemacht habe?
lg sabrina\n\n

<!--EDIT|sabrina|1161247565-->
bloonix
 2006-10-19 12:51
#70948 #70948
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=sabrina,19.10.2006, 10:21]STOPP du hattest recht meine Zeilen sehen so aus [/quote]
Kein Problem! Um eine entgültige optimale Lösung dingfest zu machen,
wären 1-3 Zeilen - absolut original - der Ursprungsdatei, also der aller
ersten Version. Dann rätseln wir hier nicht rum und man könnte deine
folgenden Formatieren eventuell schon in der while-Schleife abfackeln. =)

Nachtrag: ... original Zeilen ... ist ja schon geschehen =)\n\n

<!--EDIT|opi|1161248553-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
sabrina
 2006-10-19 12:58
#70949 #70949
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
@opi Und wie jetzt genau?
Soll ich deinen CODE in meine While schleife einbauen?
lg sabrina


Hier sind ein paar Zeilen aus den originalen Daten:
Code: (dl )
1
2
3
4
Bernstätter Roswita BLUBB\be3fr   66 715  457 6.7.2006 15:34 
Gehring Sabrina  BLUBB\ge3fr   32 016   85  5.7.2006  16:45 5.7.2006 16:45
Heizmann-Bayer Dorothea BLUBB\heb3fr   12 025  194 9.5.2006  7:41 9.5.2006  7:50
 

So sehen die ersten daten aus, die aus der Original Datei sind und die bearbeitet werden soll.\n\n

<!--EDIT|sabrina|1161250265-->
bloonix
 2006-10-19 13:30
#70950 #70950
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
Bist du sicher?

Steht in der ersten Zeile 66715 oder 66 715, also mit Leerzeichen?
Die Zeile scheint auch nicht vollständig zu sein! Da fehlt am Ende
ein zweites Mal Datum und Uhrzeit!

Wenn die Datei ein einheitliches Schema hat, also

Name, Vorname, BLUBB/String, Größe, Zahl, Datum, Uhrzeit, Datum, Uhrzeit

dann sollte das Parsen nicht schwer sein...\n\n

<!--EDIT|opi|1161250634-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
sabrina
 2006-10-19 13:32
#70951 #70951
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
erwischt habs grad geändert, kanns doch nicht kopieren muss doch an einen speziellen PC damit ich auf Perl-Communiy komme
sorry
wollte ja eigendlich nur testen ob dus merkst :blush:
lg sabrina

so jetz müsste es stimmen. Zufällig sind hier grad alle zahlen 5 stellig muss aber nicht sein können auch weniger stellen haben.\n\n

<!--EDIT|sabrina|1161250545-->
bloonix
 2006-10-19 13:39
#70952 #70952
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
Da es sich bei "BLUBB\String" um Benutzername/Passwort dreht,
solltest du auch das Passwort in deinen Beispielen verstecken! ;)
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
bloonix
 2006-10-19 14:07
#70953 #70953
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
use strict;
use warnings;

=file ./BLUBBER.txt
Bernstätter Roswita BLUBB\be3fr   66 715  457 6.7.2006 15:34
Gehring Sabrina  BLUBB\ge3fr   32 016   85  5.7.2006  16:45 5.7.2006 16:45
Heizmann-Bayer Dorothea BLUBB\heb3fr   12 025  194 9.5.2006  7:41 9.5.2006  7:50
Zeile-mit-KB kleiner-100 BLUBB\heb3fr   12  194 9.5.2006  7:41 9.5.2006  7:50
=cut

open my $fh, '<', './BLUBBER.txt' or die $!;

while (defined (my $line = <$fh>)) {
  my @array = (split /[\t\s\\]+/, $line)[0..7];
  my $x = pop @array;    # Uhrzeit oder Datum
  if ($x =~ /\./) {      # wenn x ein Datum ist
     pop @array;         # dann brauchen wir diese Zahl nicht
     my $y = pop @array; # aber diese zum Kontatinieren
     $array[-1] .= $y;
  } else {               # dann ist x eine Uhrzeit und KB < 100
     pop @array;         # die Uhrzeit brauchen wir nicht
     pop @array;         # die Zahl brauchen wir nicht
  }
  $array[-1] = sprintf('%.3f', $array[-1] / 1024);
  print join(';', @array), "\n"; # hier kannst du nach ZIEL.txt schreiben...
}

close $fh;


Edit: Trennzeichen bei join von : nach ; geändert\n\n

<!--EDIT|opi|1161252560-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
sabrina
 2006-10-19 14:22
#70954 #70954
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
das Passwort hab ich geändert sonst würde ich gejagt werden.
So jetzt hab ich aber auch noch fragen zu deinem CODE
1. muss ich das in meinem schon vorhandenen Code eingeben?

EDIT vergiss die erste frage nur  die zweite bitte beantworten.

2. muss ich jetzt in =file die ganzen Dateien schreiben das sind schon einige?
lg sabrina\n\n

<!--EDIT|sabrina|1161254639-->
<< |< 1 2 3 4 5 6 >| >> 58 Einträge, 6 Seiten



View all threads created 2006-10-18 18:37.