Archiv verlassen und diese Seite im Standarddesign anzeigen : textarea in Perl
hi,
wie kann ich in Perl (Linux-script) eine Textarea darstellen?
mit "chomp ($input = <stdin>);" kann ich "nur" eine EingabeZEILE erstellen ...
michael.sprick
25-11-2005, 08:47
Hallo,
ähm... mit
chomp ($input = <stdin>); wird nix dargestellt - damit liest Du Daten von <stdin> in $input und entfernst mit chomp das Newline Zeichen am Ende der Eingabe.
Was meinst Du mit Textarea? HTML?
ich wollte mit perl einen kleinen Texteditor machen ...
baumgartner
25-11-2005, 12:10
hmm, .......
mit @array = <STDIN> kannst du mehrzeilig einlesen; den einlesevorgang kannste mit ctrl + D glaub ich abbrechen
das is das einzig einfache das mir im moment einfällt
mal eine andere Frage , wie kann ich Texte farbig gestallten?
ich wollte ein Script für die Linux-konsole schreiben
michael.sprick
25-11-2005, 14:28
Schau Dir mal die Curses und Term Module an...
Wenn Du einen editor für die Konsole (in Perl) schreiben willst, werden die Dir einiges an Arbeit abnehmen ;)
EDIT: http://www.cpan.org/modules/00modlist.long.html#ID8_UserInterfa
gibt es einen befehl mit dem man Array zählen kann , unter PHP ist es ja count($array);
michael.sprick
25-11-2005, 16:26
Da gibt mehrere Möglichkeiten... die gebräuchlichsten sind wohl:
my @Array = ('asd','asdf','dgh','ghkj');
my $Anzahl = $#Array;
und
my @Array = ('asd','asdf','dgh','ghkj');
my $Anzahl = @Array;
letzteres funktioniert, weil im skalaren Kontext die Anzahl der Elemente des Arrays zurückgegeben wird - nicht das Array selber.
Danke
das wars auch schon
wie kann ich mit perl einen piepton ausgeben lassen?
in der LINUX-konsole geht das ja mit: echo -n -e \\a
aber mit system "echo -n -e \\a "; geht's nicht
perl -e 'print "pieps\a"'
Danke
und nochmal eine Frage :D
wie kann ich checken ob etwas in einem Array vorhanden ist?
@buchstaben = (A...Z);
@buchstaben_genutzt = ("A" , "H");
#[....]
sub buchstaben() {
print "\n";
foreach $bs (@buchstaben) {
foreach $bs_gn (@buchstaben_genutzt) {
if($bs eq $bs_gn) {
print colored("$bs " , "red");
} else {
print colored("$bs " , "green");
}
}
}
}
michael.sprick
26-11-2005, 12:38
da gibt es etliche Wege...
einer davon:
#!/usr/bin/perl
use strict;
use warnings;
my @Buchstaben = ('A'..'Z');
my @Buchstaben_genutzt = ('A','H');
foreach my $bs (@Buchstaben)
{
my $genutzt=0;
foreach(@Buchstaben_genutzt)
{
if($bs eq $_)
{
$genutzt=1;
last;
}
}
print colored("$bs ", $genutzt==1 ? "red" : "green" );
}
baumgartner
28-11-2005, 11:26
nur so mal als anregung
http://www.perl.com/pub/q/documentation
MFG Martin
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.