Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Waarschuwing: de regex hier zijn niet uitgebreid getest. Gebruik deze alleen voor het opstellen van eigen regex, en test altijd in een apart artikel!

Attribute match regex

(?!@title@)(((@)+([A-Z0-9]*[_]*)+([\s+]?[\n]?)+))

Dit matched strings beginnende met @ met alleen maar hoofdletters of cijfers, al dan niet eindigend met een spatie of newline. Dit is gebruikt voor het toevoegen van links aan attributes. Dit matched @EEN_ATTRIBUUT en @EEN_ANDERE_ATTRIBUUT enzovoorts,  maar bijvoorbeeld niet @een_attribuut of @een_ATTRIBUUT

...

-a getPageSource --space "QUAESTOR" --title "Attributes" --file temp-page-source.txt
-a storePage --space "QUAESTOR" --title "Attributes" --file temp-page-source.txt --content "" --findReplaceRegex "(?!@title@)(((@)+([A-Z0-9]*[_]*)+([\s+]?[\n]?)+)):<a class="confluence-link" href=/display/QUAESTOR/$0>$0</a>" --noConvert

De match $0 wordt gebruikt om de links op te stellen. De artikels waarnaar gelinked moest worden hadden in dit geval dezelfde naam als hetgene wat ik wilde matchen. Houd dat in het achterhoofd als je deze regex wilt gebruiken voor een vergelijkbare taak

Probleem met deze aanpak

Tijdens het maken van deze regular expression en CLI script kwam een probleem naar voren, na het aanpassen van de links met het script veranderden de links automatisch als de pagina daarna weer werd aangepast. Een link /display/QUAESTOR/@LOCAL werd bijvoorbeeld veranderd in mce_host/display/QUAESTOR/@LOCAL. Het lijkt er op dat bij het opnieuw opslaan van de links de gegenereerde HTML van de links verkeerd wordt geintepreteerd. Een mogelijke oplossing was het toevoegen van http://mods.marin.nl/ aan de rest van de link, maar hierdoor werkte het script niet meer. Dit probleem staat in dit topic beschreven, alleen is er geen oplossing gevonden. Wel is hier gemakkelijk een hack voor te schrijven, want alleen de mce_host moet veranderd worden

Uitleg

Deze regex bestaat uit 3 delen:

...