[Allegro] Ersetzung von #

Thomas Fischer fischer at sub.uni-goettingen.de
Mo Mai 6 15:05:59 CEST 2013


Hallo die Herren Berger und Allers,

schönen Dank für die Unterstützung!

>> instruktiver duerfte es sein, wenn man nicht die Feinheit
>> '"#" kann als Kategoriefolgezeichen oder Indikator vorkommen'
>> beruecksichtigt, dann ist (mit k_1 und k_2 statt k1 und k2)
>> jegliches "#" ersetzbar und die Sache wird auch unabhaengig
>> vom konkreten Kategorienschema.

Das war mir auch aufgefallen, das erleichtert einiges.

>   // Sätze, aus denen mindestens ein # rausflog,
>   // werden hier protolliert:
> expo f ersetz.txt
> first #
> :w000\if cancel jump w001\if del jump w002
>   // $put nur dann = "ja", wenn ein # rausflog
>   // und drum 'put' fällig ist:
> var "nein"\ins $put
> var k_1\ins #ux1\perf ersetz
> :w004\var k_2\if "" jump w003\ins #ux1
> perf ersetz\jump w004
> :w003\var $put\if "ja" put;dow
> :w002\next #\jump w000
> :w001\mes Fertig\close x\erase off\end
> :ersetz\var "nein"\ins $ins
> var #ux1
> if %#% var "ja";ins $put;ins $ins
> var $ins
> if "ja" var #ux1;ins _#__;ins #ux1;var "#" #ux1;ins
> return

Ungefähr entlang dieses Vorschlags habe ich das dann realisiert.
Allerdings zeigte sich, dass alle diese URLs sich in Kategorie #25 fanden, ich also direkt damit hätte arbeiten können.
So habe ich zunächst mit der Suchfunktion eine Ergebnismenge erzeugt, damit ich nicht die ganze Datenbank abgrasen muss (einfache Volltextsuche nach #25.*#) und dann mit first/next statt first #/next # gearbeitet.
Zusätzlich habe ich bei var k_1/2 ein
if not "25 " jump w004
eingebaut, das ging hinreichend flott und erlaubt mehr Flexibilität bei der Nachnutzung als ein '#25 ' im Flex.

Herrn Berger Bemerkungen zu "# in URLs" waren mir bewusst, aber es ging in dieser Situation nur um überschaubare unsinnige Dekorationen, die in unsere Datenbank (bei einem Import) gerutscht sind und so durchaus brachial entfernt werden sollten, weil sie ansonsten falsche Links in der Anzeige erzeugten. 

Mit freundlichen Grüßen
Thomas Fischer




Mehr Informationen über die Mailingliste Allegro