![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| Søg, erstatte strengen i file1 med strengen fra (opslagstabelnavn) fil2? | gstuart | Shell Programmering og Scripting | 9 | 06-08-2009 07:11 AM |
| libapache2-mod-scramble-ip 0.2 (Default branch) | iBot | Software Releases - RSS Nyheder | 0 | 07-10-2008 07:50 PM |
| Kamp Æg 1,1 (Default filial) | iBot | Software Releases - RSS Nyheder | 0 | 05-04-2008 06:30 PM |
| tilføjer strengen til tekstfil baseret på søgestreng | malaymaru | Shell Programmering og Scripting | 1 | 06-09-2006 09:53 AM |
| sed problem - udskiftning strengen skal være samme længde som matcher strengen. | amangeles | Shell Programmering og Scripting | 4 | 01-11-2006 06:11 AM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
Scramble en streng.
Hej alle, Jeg forsøger at skrive en perl script, der vil tage brugerinput som en streng og kravle strengen og udskrive resultatet. Bemærk: Jeg kan ikke bruge shuffle-funktion .... hjælp til loop. Code:
so here is example. Enter a String: abcdef Print the Result: debacf Enter a String: abcdef print the Result: cdabef Her er mit perl kode, men det virker ikke helt: Code:
print "Enter a string: ";
$sString = <STDIN>;
chomp($sString);
print "String = $sString\n";
$iLength = length($sString);
@array = split(//, $sString);
print "array = @array\n";
print "length = $iLength\n";
for ( $i = 1; $i <= $iLength; $i++ ){
$item = int(rand($#array));
print "@array[$item]\n";
}
Please ethvert organ hjælpe mig. tak, |
|
||||
|
Den enkleste måde er at sløjfe gennem array bytter hvert punkt med et andet element i en tilfældig position. Bemærk, at array er indekseret fra 0, ikke 1. Code:
for ( $i = 0; $i < $iLength; $i++ ){
$random = int(rand($#array));
$temp=$array[$random];
$array[$random]=$array[$i];
$array[$i]=$temp;
}
for ( $i = 0; $i < $iLength; $i++ ){
print "$array[$i]";
}
print "\n";
|
|
||||
|
|
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|