הפיכת מחרוזת

פורומים אפיון ופיתוח פריוריטי הפיכת מחרוזת

  • Post
    רועי זלוף
    משתתף
    יש למישהו איזשהו סקריפט או דרך להפיכת מחרוזת?

    לדוגמא: :

    STR = 'שלום'

    NEW_STR = 'םולש'

    זקוק לזה עבור משלוח מיילים בצורה אוטומטית בפרוצדורה שבניתי, ה-HTML הופך את התווים.

    אשמח לעזרה.

    רועי.

     

     

מוצגות 4 תגובות – 1 עד 4 (מתוך 4 סה״כ)
  • Replies
    yitzchok
    משתתף
    IL
    אתה מוצא טקסט לקובץ בעזרת ASCII והעברית יוצאת הפוכה? נסה
    <p style="text-align: right;">:HEBREWFILTER = 1 ;</p>
    (איך עושים כאן שייצא בכיוון הנכון? מקווה שהכוונה ברורה)
      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    רועי זלוף
    משתתף
    זה לא עבד… כנראה שאני עושה משהו לא בסדר..

    מצ"ב צילום מסך: https://imgur.com/uu7Ghbs

    NoamN
    משתתף
    none
    אני בטוח שהשאלה הזו (איך להפוך) נשאלה לפחות פעם אחת בעבר. בכל אופן, הנה קצת קוד

    :ORIG = 'ABC';
    :REV = '';
    :I = 0;
    :LEN = STRLEN (:ORIG);
    LABEL 1;
    :I = :I + 1;
    :REV = STRCAT (SUBSTR (:ORIG, :I, 1), :REV);
    LOOP 1 WHERE :I < :LEN;
    SELECT :REV FROM DUMMY FORMAT;

    בסוף מודפס CBA

    רועי זלוף
    משתתף
    תודה רבה.

    אך למען האמת, את הקוד הזה הכרתי ויש איתו בעיה – הוא לא יודע להתמודד עם רווחים.

    בניתי סקריפט חדש שיודע להפוך מחרוזת גם עם רווחים. מעט ארוך אך הוא עובד:

    :STR = 'שולש םייתש דחא';
    :NEW = ";
    :LEN = 0;
    :CHAR = ";
    :ALPHA = 0;
    :CNT = 0;
    /* INSERT '-' TO STRING */
    SELECT STRLEN(:STR) INTO :LEN FROM DUMMY;
    :NEW_LEN = :LEN;
    LABEL 500;
    SELECT SUBSTR(:STR,:NEW_LEN,1) INTO :CHAR FROM DUMMY;
    :ALPHA = ISALPHA(:CHAR);
    SELECT STRCAT(:NEW,(:ALPHA = 0 ? :CHAR : '-')) INTO :NEW FROM DUMMY;
    :NEW_LEN = :NEW_LEN -1;
    LOOP 500 WHERE :NEW_LEN > 0;
    :STR = :NEW;
    /* COUNT AMOUNT OF '-' */
    SELECT STRLEN(:STR) INTO :LEN FROM DUMMY;
    :NEW_LEN = :LEN;
    LABEL 501;
    SELECT SUBSTR(:STR,:NEW_LEN,1) INTO :CHAR FROM DUMMY;
    :CNT = (:CHAR = '-' ? :CNT + 1 : :CNT);
    :NEW_LEN = :NEW_LEN -1;
    LOOP 501 WHERE :NEW_LEN > 0;
    /* REPLACE '-' TO ' ' */
    LABEL 502;
    SELECT STRCAT(STRPIECE(:STR,'-',1,:CNT),' ',STRPIECE(:STR,'-',:CNT +
    1,1)) INTO :STR FROM DUMMY;
    :CNT = :CNT – 1;
    LOOP 502 WHERE :CNT > 0;
    SELECT :STR FROM DUMMY FORMAT;

מוצגות 4 תגובות – 1 עד 4 (מתוך 4 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.