Skip to main content

replaceAll benutzen um hochkommas zu filtern

Comments

9 comments

  • Zendesk API User
    Author: Peter_Jodeleit - 8/13/2012 8:21

    Müsste da nicht replaceAll("\"", "\\\"") gemacht werden (3 Backslashes, der erste escaped den 2. Backslash, der 3. das doppelte Hochkommata)?!

    Deine Variante ist syntaktisch falsch, was in den "Fehlern der Vorschau" angezeigt werden müsste.

    0
  • Zendesk API User
    Author: captFuture - 8/13/2012 8:37

    Der syntaxfehler wurde natürlich angezeigt und ich hab ihn mitlerweile schon korrigiert (danke für die Hilfe)... Leider kommt nun aber nichts mehr zur Anzeige.

    $CMS_IF(#cs.isFirstContentRow)${"addon":[ {

    $CMS_ELSE$

    {

    $CMS_END_IF$

    "item_id":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.ITEM_ID, default:"")$$CMS_END_TRIM$",

    "name":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.name, default:"")$$CMS_END_TRIM$",

    "shortdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.shortdesc.replaceAll("\"", "\\\""), default:"")$$CMS_END_TRIM$",

    "longdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc.replaceAll("\"", "\\\""), default:"")$$CMS_END_TRIM$"

    $CMS_IF(!#cs.isLastContentRow)$

    },

    $CMS_ELSE$

    }

    ]}

    $CMS_END_IF$

    bei shortdesc und longdesc ist im generierten file alles leer.

    0
  • Zendesk API User
    Author: Peter_Jodeleit - 8/13/2012 8:49

    Da kann ich "aus der Ferne" nicht viel zu sagen. Wenn bei "Fehler der Vorschau" jetzt nichts mehr angemeckert wird könnte ich mir nur noch vorstellen, das der "default" Fall von $CMS_VALUE zuschlägt (der ist ja auch "leer").

    0
  • Zendesk API User
    Author: captFuture - 8/13/2012 9:31

    Ich hab keine Fehler in der Vorschau, das ist richtig. Was mich sehr stutzig macht ist, dass es bei INPUT_TEXT sehrwohl funktioniert und bei INPUT_DOM eben nicht. (bei beiden ist der default wert leer)

    0
  • Zendesk API User
    Author: Peter_Jodeleit - 8/13/2012 10:20

    Ok, hatte im Beitrag das CMS_INPUT_DOM überlesen. "replaceAll" ist auf String definiert, CMS_INPUT_DOM liefert aber keinen String. D.h. da muss zunächst die String-Konvertierung durchgeführt werden. Wie das funktioniert, wurde in der Community schon mal erkärt. Bitte mal die Suche bemühen..

    0
  • Zendesk API User
    Author: captFuture - 8/13/2012 11:32

    Suche und auf basis dessen Diverseste Versuche bringen mir leider nicht das gewünschte ergebnis:

    "longdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc, default:"")$$CMS_END_TRIM$",

    liefert -> "longdesc":"<p>Ausgenommen ... vorbehalten. <a href="....pdf" target="">Kompatible</a></p>",

    "longdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc.toText(true).replaceAll("\"", "\\\""), default:"")$$CMS_END_TRIM$",

    liefert -> "longdesc":"<p>Ausgenommen ...vorbehalten. <a href="#" linkid="0297c57c-6bc8-4860-b1fc-212e716a61f4">Kompatible</a></p>",

    "longdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc.toText(false).replaceAll("\"", "\\\""), default:"")$$CMS_END_TRIM$"

    liefert -> "longdesc":"Ausgenommen ...vorbehalten. Kompatible"

    "longdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc.toString, default:"")$$CMS_END_TRIM$"

    liefert -> "longdesc":"de.espirit.firstspirit.access.editor.value.DomElementImpl@495f3eb0"

    "longdesc":"$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc.toString.replaceAll("\"", "\\\""), default:"")$$CMS_END_TRIM$"

    liefert -> "longdesc":"de.espirit.firstspirit.access.editor.value.DomElementImpl@17a4988c"

    0
  • Zendesk API User
    Author: feddersen - 8/14/2012 9:31

    Nach folgendem Prinzip sollte es klappen:

    $CMS_SET(tmp)$$CMS_VALUE(meinDOM)$$CMS_END_SET$

    $CMS_VALUE(tmp.toString.replaceAll("a","b"))$

    0
  • Zendesk API User
    Author: captFuture - 8/20/2012 8:49

    Fehler bekomm ich jetzt keinen mehr und die ausgabe ist auch nicht leer, das replacement funktioniert jedoch nicht.

    $CMS_SET(tmplong)$$CMS_TRIM(level:4)$$CMS_VALUE(#row.longdesc)$$CMS_END_TRIM$$CMS_END_SET$

    "longdesc":"$CMS_VALUE(tmplong.toString.replaceAll("a","A"))$"

    FUNKTIONIERT und tauscht a gegen A

    $CMS_SET(tmpshort)$$CMS_TRIM(level:4)$$CMS_VALUE(#row.shortdesc)$$CMS_END_TRIM$$CMS_END_SET$

    "shortdesc":"$CMS_VALUE(tmpshort.toString.replaceAll("\"","\\\""))$",

    FUNKTIONIERT NICHT - tauscht nichts aus

    0
  • Zendesk API User
    Author: marro - 8/20/2012 10:09

    Verwende mal anstelle von replaceAll replace. Dann sollte es gehen.

    0

Please sign in to leave a comment.