Community
    • Login

    Create aligned columns

    Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
    3 Posts 2 Posters 2.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Giuliana SwdnG
      Giuliana Swdn
      last edited by

      Hi all,

      I would like to create columns out of the list of numbers I have.
      The goal is to achieve the same column style of the first row of numbers (ROW8) that you can see in the picture (see link: http://imgur.com/a/afR3M ).
      The following rows of numbers have the same length (same amount of digits as in ROW 8) but they have no spaces in between and I want them to get aligned.
      Here there is a scheme of the [spaces] and the number of digits I would like to obtain.
      [10] 10 [12] 8 [11] 9 [11] 9 [11] 9 [11] 9 [11] 9 [11] 9 [11] 9 [11] 9.

      Hopefully someone can help me with this!
      Cheers,
      Giuliana

      1 Reply Last reply Reply Quote 0
      • guy038G
        guy038
        last edited by

        Hello, Giuliana,

        Not very difficult with regular expressions !

        From your picture, Giuliana, each line of your file ( 90 characters long ) must be separated, according to the template : “10spaces - 10 digits - 12 spaces - 8 digits - ( 11 spaces 9 digits ) * 8”, to obtain a line of 200 characters long

        So :

        • Open your file and move back to its very beginning, if necessary

        • Open the Replace dialog

        • Type, in the two *Find what: and Replace with: fields, the following regex expressions, WITHOUT the double quotes ( " )

        SEARCH "(?-s)^(.{10})(.{8})(.{9})(.{9})(.{9})(.{9})(.{9})(.{9})(.{9})(.{9})"
        
        REPLACE "          $1            $2           $3           $4           $5           $6           $7           $8           $9           $10"
        
        • Beware :

          • There are 10 space characters, between the " character and the back-reference $1
          • There are 12 space characters, between the the two back-references $1 and $2
          • Then, always 11 space characters, between two back-references, till the end of the line
        • Check the Regular expression search mode ( IMPORTANT )

        • Finally, click on the Replace All button

        So, starting, for instance, from the original line, below :

        135012160427072098258328479258328482258328481258328480258328483258328486258328485258328484
        

        you’ll get the formatted text, below :

                  1350121604            27072098           258328479           258328482           258328481           258328480           258328483           258328486           258328485           258328484
        

        NOTES :

        • At beginning of the search regex, the syntax (?-s) ensures you that the following dot characters refer to a single standard character, only

        • The syntax .{n}, where n is a digit, represents n consecutive standard characters, from current caret position,

        • As this syntax is enclosed within two round brackets, these n characters are stored, successively, as group 1, 2, 3…

        • And are re-written, in replacement, accordingly to the appropriate back-reference $x, simply preceded by the correct amount of space characters

        Cheers,

        guy038

        1 Reply Last reply Reply Quote 0
        • Giuliana SwdnG
          Giuliana Swdn
          last edited by

          Thank you sooo much for your reply!!!
          Very clear and exhaustive!

          Have a great weekend and thanks again :)
          Cheers,
          Giuliana

          1 Reply Last reply Reply Quote 0
          • First post
            Last post
          The Community of users of the Notepad++ text editor.
          Powered by NodeBB | Contributors