Extract file extension: Difference between revisions

Added Quackery.
(Added Quackery.)
Line 2,062:
document.txt_backup ->
/etc/pam.d/login -> </pre>
 
=={{header|Quackery}}==
 
<lang Quackery> [ bit
[ 0
$ "abcdefghijklmnopqrstuvwxyz"
$ "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
$ "1234567890." join join
witheach [ bit | ] ] constant
& 0 > ] is validchar ( c --> b )
[ dup -1 peek char . = iff
[ drop $ "" ] done
$ "" swap
reverse witheach
[ dup dip join
dup validchar iff
[ char . = if
[ reverse conclude ] ]
else
[ 2drop $ "" conclude ] ]
dup 1 split drop
char . nested != if
[ drop $ "" ] ] is extension ( $ --> $ )
[ cr dup echo$ say " --> "
extension
dup $ "" = iff
[ drop say "no extension" ]
else echo$
cr ] is task ( $ --> )
$ "http://example.com/download.tar.gz" task
$ "CharacterModel.3DS" task
$ ".desktop" task
$ "document" task
$ "document.txt_backup" task
$ "/etc/pam.d/login" task</lang>
 
{{out}}
 
<pre>http://example.com/download.tar.gz --> .gz
 
CharacterModel.3DS --> .3DS
 
.desktop --> .desktop
 
document --> no extension
 
document.txt_backup --> no extension
 
/etc/pam.d/login --> no extension
</pre>
 
=={{header|Racket}}==
1,483

edits