Results 1 to 6 of 6

Thread: How do I separate a string?

  1. #1
    Join Date
    Mar 2007
    Location
    Mars, I thought all men were from Mars.
    Posts
    513
    Mentioned
    7 Post(s)
    Quoted
    124 Post(s)

    Default How do I separate a string?

    For example if I have the String 'Hello' and I want to store only the letters 'ell' into a variable. How would I do this?

    Something like this I'm guessing:

    TheString:= 'Hello';
    StrPart := TheString[1..3];

    but i think i need a for loop in there to separate the string but I don't know how to do that.

    for I := 0 to High[TheString] do
    TheString[I] := TheStringArray[I];
    Last edited by bud_wis_er_420; 02-27-2012 at 01:41 AM.

  2. #2
    Join Date
    Jan 2008
    Location
    10° north of Hell
    Posts
    2,035
    Mentioned
    65 Post(s)
    Quoted
    164 Post(s)

    Default

    StringPart := Copy(TheString, 2, 3); //ell, start on 2 copy 3 characters

    Dg's Small Procedures | IRC Quotes
    Thank Wishlah for my nice new avatar!
    Quote Originally Posted by IRC
    [22:12:05] <Dgby714> Im agnostic
    [22:12:36] <Blumblebee> :O ...you can read minds

  3. #3
    Join Date
    Mar 2007
    Location
    Mars, I thought all men were from Mars.
    Posts
    513
    Mentioned
    7 Post(s)
    Quoted
    124 Post(s)

    Default

    Quote Originally Posted by Dgby714 View Post
    StringPart := Copy(TheString, 2, 3); //ell, start on 2 copy 3 characters
    Ok, Thx very much.

  4. #4
    Join Date
    Oct 2007
    Location
    #srl
    Posts
    6,102
    Mentioned
    39 Post(s)
    Quoted
    62 Post(s)

    Default

    If you're going to be working with strings, you may find the implode and explode functions rather useful as well.

  5. #5
    Join Date
    Dec 2011
    Location
    Nj
    Posts
    2,341
    Mentioned
    1 Post(s)
    Quoted
    18 Post(s)

    Default

    I agree with DGBY as well. So no loop needed.

    For the basics of the basics of pascal, try my TuT. ||Photoshop Editing ||MapleResourceDung Script || Book a flight! BuySellTrip

  6. #6
    Join Date
    Mar 2007
    Location
    Mars, I thought all men were from Mars.
    Posts
    513
    Mentioned
    7 Post(s)
    Quoted
    124 Post(s)

    Default

    Thanks for all your helpful posts, but can someone explain the implode and explode functions? I did some searching and all I could come up with is this.

    Simba Code:
    function Implode(Glue: string; Pieces: TStringArray): string;
    //Implodes strings into 1 string.

    function Explode(Separator, s: string): TStringArray;
    //Explodes a string into pieces.

    But what is the Separator and Glue variables? What are their valid arguments?

    I found this in someones script ---> result := Explode(chr(10), s);
    But what is chr(10)?

    That's not in this list of valid character assignments, in the Simba handbook, below?


    UNKNOWN: 0
    LBUTTON: 1
    RBUTTON: 2
    CANCEL: 3
    MBUTTON: 4
    XBUTTON1: 5
    XBUTTON2: 6
    BACK: 8
    TAB: 9
    CLEAR: 12
    RETURN: 13
    SHIFT: 16
    CONTROL: 17
    MENU: 18
    PAUSE: 19
    CAPITAL: 20
    KANA: 21
    HANGUL: 21
    JUNJA: 23
    FINAL: 24
    HANJA: 25
    KANJI: 25
    ESCAPE: 27
    CONVERT: 28
    NONCONVERT: 29
    ACCEPT: 30
    MODECHANGE: 31
    SPACE: 32
    PRIOR: 33
    NEXT: 34
    END: 35
    HOME: 36
    LEFT: 37
    UP: 38
    RIGHT: 39
    DOWN: 40
    SELECT: 41
    PRINT: 42
    EXECUTE: 43
    SNAPSHOT: 44
    INSERT: 45
    DELETE: 46
    HELP: 47
    0: 30
    1: 31
    2: 32
    3: 33
    4: 34
    5: 35
    6: 36
    7: 37
    8: 38
    9: 39
    A: 41
    B: 42
    C: 43
    D: 44
    E: 45
    F: 46
    G: 47
    H: 48
    I: 49
    J: 4A
    K: 4B
    L: 4C
    M: 4D
    N: 4E
    O: 4F
    P: 50
    Q: 51
    R: 52
    S: 53
    T: 54
    U: 55
    V: 56
    W: 57
    X: 58
    Y: 59
    Z: 5A
    LWIN: 5B
    RWIN: 5C
    APPS: 5D
    SLEEP: 5F
    NUMPAD0: 96
    NUMPAD1: 97
    NUMPAD2: 98
    NUMPAD3: 99
    NUMPAD4: 100
    NUMPAD5: 101
    NUMPAD6: 102
    NUMPAD7: 103
    NUMPAD8: 104
    NUMPAD9: 105
    MULTIPLY: 106
    ADD: 107
    SEPARATOR: 108
    SUBTRACT: 109
    DECIMAL: 110
    DIVIDE: 111
    F1: 112
    F2: 113
    F3: 114
    F4: 115
    F5: 116
    F6: 117
    F7: 118
    F8: 119
    F9: 120
    F10: 121
    F11: 122
    F12: 123
    F13: 124
    F14: 125
    F15: 126
    F16: 127
    F17: 128
    F18: 129
    F19: 130
    F20: 131
    F21: 132
    F22: 133
    F23: 134
    F24: 135
    NUMLOCK: 90
    SCROLL: 91
    LSHIFT: A0
    RSHIFT: A1
    LCONTROL: A2
    RCONTROL: A3
    LMENU: A4
    RMENU: A5
    BROWSER_BACK: A6
    BROWSER_FORWARD: A7
    BROWSER_REFRESH: A8
    BROWSER_STOP: A9
    BROWSER_SEARCH: AA
    BROWSER_FAVORITES: AB
    BROWSER_HOME: AC
    VOLUME_MUTE: AD
    VOLUME_DOWN: AE
    VOLUME_UP: AF
    MEDIA_NEXT_TRACK: B0
    MEDIA_PREV_TRACK: B1
    MEDIA_STOP: B2
    MEDIA_PLAY_PAUSE: B3
    LAUNCH_MAIL: B4
    LAUNCH_MEDIA_SELECT: B5
    LAUNCH_APP1: B6
    LAUNCH_APP2: B7
    OEM_1: BA
    OEM_PLUS: BB
    OEM_COMMA: BC
    OEM_MINUS: BD
    OEM_PERIOD: BE
    OEM_2: BF
    OEM_3: C0
    OEM_4: DB
    OEM_5: DC
    OEM_6: DD
    OEM_7: DE
    OEM_8: DF
    OEM_102: E2
    PROCESSKEY: E7
    ATTN: F6
    CRSEL: F7
    EXSEL: F8
    EREOF: F9
    PLAY: FA
    ZOOM: FB
    NONAME: FC
    PA1: FD
    OEM_CLEAR: FE
    HIGHESTVALUE: FE
    UNDEFINED: FF


    I only listing this stuff just so you know I DID do some research b4 I posted and You know what I looked into.

    Does anyone know where I can go to get better explanations of all of Simbas available functions?


    Here my script I built to test with:
    Simba Code:
    program new;
    var
      I: Integer;
      Txtleng: LongInt;
      Text: string;
      Text_array: TStringArray;

    begin
      Text := 'Hello World';
      Txtleng := Length(Text);
      Writeln(inttostr(Txtleng));
      SetArrayLength(Text_array, Txtleng);
      Text_array := Explode(chr(10), Text);
      for I := 0 to High(Text_array) do
        Writeln(Text_array[I]);


    Edit:

    NVM, I figured it out.
    Last edited by bud_wis_er_420; 03-04-2012 at 01:43 AM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •