betere regel

  • Onderwerp starter Verwijderd lid 399
  • Startdatum

Lennard

Active member
Uurtje of 2 heb ik zitten knoeien.
t Moeilijkste was die woordenhusselaar, maar die heeft uiteindelijk iemand anders gemaakt.
emo.gif
 

Cruwdy

New member
Lennard:
Uurtje of 2 heb ik zitten knoeien.
t Moeilijkste was die woordenhusselaar, maar die heeft uiteindelijk iemand anders gemaakt.
emo.gif


dat valt me dan weer tegen
yummie.gif
 

Sjoerd

Active member
Wat is er moeilijk aan?

$zinnen array en een echo $zinnen[rand(0, (count($woorden)-1))];

of moest jij weer helemaal in je "core" kloten ?
emo.gif
 

Lennard

Active member
Het letters husselen was het moeilijkst, die zinnen waren zo klaar.
emo.gif


Bedenk jij dit maar effies:
Codeblok:



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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60

[COLOR= #0000BB]<?php[/COLOR]
[COLOR= #007700]function[/COLOR] omdraai[COLOR= #007700]([/COLOR][COLOR= #0000BB]$text[/COLOR][COLOR= #007700])
{[/COLOR]

[COLOR= #0000BB]$parts[/COLOR] [COLOR= #007700]=[/COLOR] preg_split[COLOR= #007700]([/COLOR][COLOR= #DD0000]{([[^][n]+])}[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$text[/COLOR][COLOR= #007700], -[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] PREG_SPLIT_DELIM_CAPTURE[COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$text[/COLOR] [COLOR= #007700]=[/COLOR] array[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$resultCounter[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]

for[COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$s[/COLOR] [COLOR= #007700]=[/COLOR] count[COLOR= #007700]([/COLOR][COLOR= #0000BB]$parts[/COLOR][COLOR= #007700]);[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]!=[/COLOR] [COLOR= #0000BB]$s[/COLOR][COLOR= #007700]; ++[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]) {[/COLOR]
if[COLOR= #007700]([/COLOR][COLOR= #0000BB]$parts[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]] ==[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700]) {[/COLOR]
continue[COLOR= #007700];
}[/COLOR]

[COLOR= #0000BB]$counter[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$resultCounter[/COLOR][COLOR= #007700]++;[/COLOR]

[COLOR= #0000BB]$result[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$counter[/COLOR][COLOR= #007700]] =[/COLOR] null[COLOR= #007700];[/COLOR]
if[COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]&[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$result[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$counter[/COLOR][COLOR= #007700]] =[/COLOR] [COLOR= #0000BB]$parts[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]];
}[/COLOR] else [COLOR= #007700]{[/COLOR]
[COLOR= #0000BB]$text[/COLOR][COLOR= #007700][] =[/COLOR] [COLOR= #0000BB]$parts[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]];
}
}[/COLOR]

[COLOR= #FF8000]//krsort($text); [/COLOR]

for[COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]!=[/COLOR] [COLOR= #0000BB]$resultCounter[/COLOR][COLOR= #007700]; ++[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]) {[/COLOR]
if[COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]] ===[/COLOR] null[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$woord[/COLOR] [COLOR= #007700]=[/COLOR] array_shift[COLOR= #007700]([/COLOR][COLOR= #0000BB]$text[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$woorden[/COLOR] [COLOR= #007700]=[/COLOR] explode[COLOR= #007700]([/COLOR][COLOR= #DD0000] [/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$woord[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$zin[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700];[/COLOR]

foreach[COLOR= #007700]([/COLOR][COLOR= #0000BB]$woorden[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$curr[/COLOR][COLOR= #007700])
{[/COLOR]

[COLOR= #0000BB]$teller[/COLOR] [COLOR= #007700]=[/COLOR] strlen[COLOR= #007700]([/COLOR][COLOR= #0000BB]$curr[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$zin[/COLOR] [COLOR= #007700].=[/COLOR] substr[COLOR= #007700]([/COLOR][COLOR= #0000BB]$curr[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$curr[/COLOR] [COLOR= #007700]=[/COLOR] strrev[COLOR= #007700]([/COLOR][COLOR= #0000BB]$curr[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$stukjes[/COLOR] [COLOR= #007700]=[/COLOR] array[COLOR= #007700]();[/COLOR]

for[COLOR= #007700]([/COLOR][COLOR= #0000BB]$k[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$k[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$teller[/COLOR] [COLOR= #007700]-[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$k[/COLOR][COLOR= #007700]++)
{[/COLOR]

[COLOR= #0000BB]$stukjes[/COLOR][COLOR= #007700][] =[/COLOR] substr[COLOR= #007700]([/COLOR][COLOR= #0000BB]$curr[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$k[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);

}[/COLOR]
shuffle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$stukjes[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$zin[/COLOR] [COLOR= #007700].=[/COLOR] implode[COLOR= #007700]([/COLOR][COLOR= #0000BB]$stukjes[/COLOR][COLOR= #007700]).[/COLOR]substr[COLOR= #007700]([/COLOR][COLOR= #0000BB]$curr[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #DD0000] [/COLOR][COLOR= #007700];

}[/COLOR]

[COLOR= #0000BB]$result[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]] =[/COLOR] rtrim[COLOR= #007700]([/COLOR][COLOR= #0000BB]$zin[/COLOR][COLOR= #007700]);

}
}[/COLOR]
return implode[COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700]);

}[/COLOR]




cry.gif


edit: ik heb alleen het husselen van de letters gemaakt; het zorgen dat de ubb codes intact blijven komt van iemand anders
emo.gif
 

Sjoerd

Active member
Codeblok:



1
2
3
4
5
6
7
8
9
10

[COLOR= #0000BB]<?
$zin[/COLOR] [COLOR= #007700]=[/COLOR] explode[COLOR= #007700]([/COLOR][COLOR= #DD0000]" "[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$bericht[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$uitkomst[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700];[/COLOR]
foreach[COLOR= #007700]([/COLOR][COLOR= #0000BB]$zin[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$woord[/COLOR][COLOR= #007700]){[/COLOR]
if[COLOR= #007700](![/COLOR]eregi weet ik veel eregi ding dat [COLOR= #007700][[/COLOR] en [COLOR= #007700]][/COLOR] niet mogen[COLOR= #007700],[/COLOR] dan gaat hij naar volgende woord [COLOR= #007700]{[/COLOR]
[COLOR= #0000BB]$uitkomst[/COLOR] [COLOR= #007700].=[/COLOR] str_shuffle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$woord[/COLOR][COLOR= #007700]);
}
}[/COLOR]
echo [COLOR= #0000BB]$uitkomst[/COLOR][COLOR= #007700];[/COLOR]
?>






dat is ook wel leuk
smile.gif
 

Lennard

Active member
Ja, maar ik weet 0 van reguliere expressies, dus aan iemand vragen was net zo handig dan zelf wat knoeien.

In jouw ding kun je met if(!strstr($woord, [) && !strstr($woord, ])) ook wel een eind komen.
yummie.gif


Maarja, t had vast makkelijker gekund idd.
emo.gif
 
Bovenaan