83 $lord = strtolower( $word );
85 if ( preg_match(
'/wiki$/', $lord ) ) {
88 if ( isset( self::$familygender[$lord] ) ) {
89 $gender = self::$familygender[$lord];
92 $isGenderFemale = $gender ===
'f';
94 $case =
' ' . strtolower( $case );
95 if ( preg_match(
'/ [is]/', $case ) ) {
96 # däm WikiMaatplaz singe, dä Wikipeedija iere, däm Wikiwööterbooch singe
97 # dem/em WikiMaatplaz singe, de Wikipeedija iere, dem/em Wikiwööterbooch singe
98 # däm WikiMaatplaz sing, dä Wikipeedija ier, däm Wikiwööterbooch sing
99 # dem/em WikiMaatplaz sing, de Wikipeedija ier, dem/em Wikiwööterbooch sing
100 $word = ( preg_match(
'/ b/', $case )
101 ? ( $isGenderFemale ?
'dä' :
'däm' )
102 : ( $isGenderFemale ?
'de' :
'dem' )
103 ) .
' ' . $word .
' ' .
104 ( $isGenderFemale ?
'ier' :
'sing' ) .
105 ( preg_match(
'/ m/', $case ) ?
'e' :
'' );
106 } elseif ( preg_match(
'/ e/', $case ) ) {
107 # en dämm WikiMaatPlaz, en dä Wikipeedija, en dämm Wikiwööterbooch
108 # em WikiMaatplaz, en de Wikipeedija, em Wikiwööterbooch
109 if ( preg_match(
'/ b/', $case ) ) {
110 $word =
'en ' . ( $isGenderFemale ?
'dä' :
'däm' ) .
' ' . $word;
112 $word = ( $isGenderFemale ?
'en de' :
'em' ) .
' ' . $word;
114 } elseif ( preg_match(
'/ [fv]/', $case ) || preg_match(
'/ [2jg]/', $case ) ) {
115 # vun däm WikiMaatplaz, vun dä Wikipeedija, vun däm Wikiwööterbooch
116 # vum WikiMaatplaz, vun de Wikipeedija, vum Wikiwööterbooch
117 if ( preg_match(
'/ b/', $case ) ) {
118 $word =
'vun ' . ( $isGenderFemale ?
'dä' :
'däm' ) .
' ' . $word;
120 $word = ( $isGenderFemale ?
'vun de' :
'vum' ) .
' ' . $word;
122 } elseif ( preg_match(
'/ [3d]/', $case ) ) {
123 # dämm WikiMaatPlaz, dä Wikipeedija, dämm Wikiwööterbooch
124 # dem/em WikiMaatplaz, de Wikipeedija, dem/em Wikiwööterbooch
125 if ( preg_match(
'/ b/', $case ) ) {
126 $word = ( $isGenderFemale ?
'dää' :
'dämm' ) .
' ' . $word;
128 $word = ( $isGenderFemale ?
'de' :
'dem' ) .
' ' . $word;
131 # dä WikiMaatPlaz, di Wikipeedija, dat Wikiwööterbooch
132 # der WikiMaatplaz, de Wikipeedija, et Wikiwööterbooch
133 if ( preg_match(
'/ b/', $case ) ) {
156 $word = $lord .
' ' . $word;