Aus der Programmierwerkstatt
Reiter und Tabforms mit Javascript
Phonetische Umformung von Nachnamen
Angepasst auf die deutsche Aussprache von Nachnamen und basierend auf dem Metaphone Algorithmus
Und das Ganze in Javascript
Implementierung in Cold Fusion
<!--- Adapted Metaphone Algorithmus for names --->
<!--- delete doubled letters --->
<cfset phonname = #ReplaceList(lastname,"BB,CC,DD,FF,GG,HH,JJ,KK,LL,MM,NN,PP,RR,SS,TT,VV,WW,XX,ZZ","B,C,D,F,G,H,J,K,L,M,N,P,R,S,T,V,W,X,Z")#>
<!--- delete special characters and whitespace --->
<cfset phonname = #ReplaceList(phonname,"-,,.,_,;,:,+",",,,,,,")#>
<!--- initial letter rules --->
<cfset phonname = #REReplace(phonname,"^CH","K","ONE")#>
<!--- multiple character rules --->
<cfset phonname = #ReplaceList(phonname,"SCH,CHS,CKS,CZ,KS,TS,TZ,SZ,CK,DT,PF,PH,CH,QU","S,S,S,S,S,S,S,S,K,T,F,F,0,KF")#>
<!--- single character rules - Characters to delete must be last because of CF Bug --->
<cfset phonname = #ReplaceList(phonname,"Z,X,ß,D,V,W,C,G,Y,J,H","S,S,S,T,F,F,K,K,I,I,")#>
<!--- delete all vowels exept if it is the first letter (keep the first letter) --->
<cfset phonname = #Leftlphonname,1)# &
#ReplaceList(Mid(phonname,2,40),"A,Ä,E,I,O,Ö,U,Ü",",,,,,,,")#>
Implementierung in PL/SQL
create or replace package metaphone is
procedure delete_double_char ( string in out varchar2 ) ;
procedure exchange_char ( string in out varchar2 ) ;
procedure metaphone ( string in out varchar2 ) ;
function metaphone ( string in out varchar2 ) return varchar2;
end ; -- Package Defininition
/
create or replace package body metaphone is
-- delete all double characters in a string
procedure delete_double_char ( string in out varchar2 ) is
i integer := 1;
prev char := '';
buffer varchar2(2000);
begin
-- go through every character in the string
for i in 1 .. length ( string)
loop
-- copy first character at start time
if i = 1
then
buffer := substr(string, i , 1);
end if ;
if i > 1
then
-- compare with previous character
if upper( prev) = upper ( substr ( string, i , 1))
then
null ;
else
buffer := buffer || substr ( string, i, 1);
end if ;
end if ;
-- store the actual one
prev := substr(string, i , 1);
end loop ;
-- copy the condensed string
string := buffer;
end ; -- end of delete_double_chars
procedure exchange_char ( string in out varchar2 ) is
buffer varchar2(2000);
first char ;
begin
-- delete special characters and whitespace
string := replace (string, '-','');
string := replace (string, '+','');
string := replace (string, ' ',''); --space
string := replace (string, ' ',''); --tab
-- initial letter rules
buffer := substr ( string, 1, 2);
if buffer = 'CH' then
buffer := 'K' || substr ( string, 3, length ( string) - 2);
string := buffer;
end if ;
-- multiple character rules
string := replace ( string, 'SCH', 'S' );
string := replace ( string, 'CHS', 'S' );
string := replace ( string, 'CKS', 'S' );
string := replace ( string, 'CZ', 'S' );
string := replace ( string, 'KS', 'S' );
string := replace ( string, 'TS', 'S' );
string := replace ( string, 'TZ', 'S' );
string := replace ( string, 'SZ', 'S' );
string := replace ( string, 'CK', 'K' );
string := replace ( string, 'DT', 'T' );
string := replace ( string, 'PF', 'F' );
string := replace ( string, 'PH', 'F' );
string := replace ( string, 'CH', '0' );
string := replace ( string, 'QU', 'KF' );
-- single character rules
string := replace ( string, 'Z', 'S' );
string := replace ( string, 'X', 'S' );
string := replace ( string, 'D', 'T' );
string := replace ( string, 'V', 'F' );
string := replace ( string, 'W', 'F' );
string := replace ( string, 'C', 'K' );
string := replace ( string, 'G', 'K' );
string := replace ( string, 'H', '');
string := replace ( string, 'J', 'I');
string := replace ( string, 'Y', 'I');
first := substr ( string , 1, 1 );
string := substr ( string, 2, 100);
-- replace all the vowels
string := replace ( string, 'Ä','');
string := replace ( string, 'A','');
string := replace ( string, 'E','');
string := replace ( string, 'I','');
string := replace ( string, 'O','');
string := replace ( string, 'Ö','');
string := replace ( string, 'U','');
string := replace ( string, 'Ü','');
-- save fist character to prevent delete
-- of a leading vowel
string := first || string ;
end ; -- end of exchange_char
procedure metaphone ( string in out varchar2 ) is
begin
delete_double_char ( string) ;
exchange_char ( string) ;
end ; -- metaphone
function metaphone ( string in out varchar2 ) return varchar2 is
begin
delete_double_char ( string) ;
exchange_char ( string) ;
return (string) ;
end ; -- metaphone
end ; -- implementation metaphone
Kalenderbaustein a'la Outlook
Vorbelegung mit dem per Formular übergebenen (ISO)-Datum oder sonst dem 22.05.2001
Als Popup
Man beachte, daß sich bei Änderung im Datum2 Feld auch das Popup ändert!
Ohne Initialwert
Das Javascript dazu Das Stylesheet dazu
Beispiel für das Aussehen der verschiedenen Schriftgrößen Angaben
Man beachte die Auswirkungen bei Änderungen im Menüpunkt Ansicht/Schriftgrad
typ size |
typ size(relativ in prozent) |
typ size(in punkte)
|
|
font-size: xx-large |
font-size: 300% |
font-size: 36pt |
font-size: x-large |
font-size: 200% |
font-size: 24pt |
font-size: large |
font-size: 150% |
font-size: 18pt |
font-size: medium |
font-size: 110% |
font-size: 14pt |
|
font-size: 105% |
font-size: 13pt |
font-size: small |
font-size: 100% |
font-size: 12pt |
|
font-size: 95% |
font-size: 11pt |
font-size: x-small |
font-size: 80% |
font-size: 10pt |
font-size: xx-small |
font-size: 60% |
font-size: 7pt |
3D Trennstriche mittels Cascading Style Sheet realisiert
<hr class="vlightgrey">
<hr class="dimgray">
<hr class="red">
<hr class="3lightgrey">
<hr class="3cornflowerblue">
<hr class="3red">
Das Stylesheet dazu
Beispiel für Drag und Drop
Man selektiere einen beliebigen Text oder ein beliebiges Objekt (z.B. Link) und lasse es über dem Formularfeld
fallen. Der (default) Inhalt wird an den Text angehangen.
Das funktioniert sogar mit Objekten aus einem anderen Browser Fenster oder aus Word, Outlook etc.!!
Durch Benutzung des ondragstart() Event Handlers läßt sich der default Wert überschreiben. Ein Beispiel ist der
nachfolgende Link, bei dem nicht die Adresse sondern der Link samt HTML (Methode outerHtml) genommen wird.
Beispiel Link https://code.google.com/p/touchscreen-apps/
Daten |
Bildung |
Kultur |
Wasser |
Kontakt |
Filler |
|
|
|
|
|
|
|
|
|
|
|
|
|