Community
    • Login

    Paste every "say 37th line" apx..

    Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
    30 Posts 3 Posters 1.7k 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.
    • guy038G
      guy038
      last edited by

      Hi, @carolina-number-1

      eeb17561-1990-459b-a59d-9676327f3b76-image.png

      BR

      guy038

      Carolina Number 1C 2 Replies Last reply Reply Quote 0
      • Carolina Number 1C
        Carolina Number 1 @guy038
        last edited by

        @guy038

        Hey Thanks All!!!

        You are great!!!

        I am 70 and a tad slow but getting it, i think lol

        1 Reply Last reply Reply Quote 1
        • Carolina Number 1C
          Carolina Number 1 @guy038
          last edited by

          @guy038
          t seems now its just stopped replacing…say no occurences were replaced …etc

          Thank you,
          Bob M.

          1 Reply Last reply Reply Quote 0
          • Carolina Number 1C
            Carolina Number 1
            last edited by

            If I need to change this: isuserselectable = 0 ; flag off for non selectable planes to this:

            isUserSelectable = 0 ; (on the end of search line after 0 ; \R\K

            and still replace with:

            sound = “sound” ; sound folder (sound = “sound” ; sound folder\r\n)

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

              @carolina-number-1,

              Your last post isn’t quite clear but I guess you would like to add the line sound = "sound" ; sound folder right after each line beginning with isuserselectable = 0, whatever the contents of a possible comment area, coming next the colon character

              If so, change the search regex, only, as :

              SEARCH (?-si)isuserselectable = 0.*\R\K

              • The (?-s) part means that any dot meta-character matches a single standard character

              • The .* syntax, before the \R , represents the area, possibly empty, of standard character(s), after the string = 0 and before the EOL chars

              I advice you to get documentation on the regex world, in this FAQ

              Best regards,

              guy038

              Carolina Number 1C 1 Reply Last reply Reply Quote 0
              • Carolina Number 1C
                Carolina Number 1 @guy038
                last edited by

                @guy038

                Hey Thank you…You are awesome…thanks for all your help!! Defeinitely check out the faq…

                BobM.

                Carolina Number 1C 1 Reply Last reply Reply Quote 0
                • Carolina Number 1C
                  Carolina Number 1 @Carolina Number 1
                  last edited by

                  @guy038

                  Just curious and maybe it can’t be done… but lets say I have 100 Fltsims and I want to be apostrophe’s at the beginning and end of the title line only…can that be done…here’s a sample:

                  [fltsim.1]
                  title=“JFAI_737_300_AirChina”
                  sim=TrafficGlobal
                  model=
                  panel=x
                  sound=
                  texture=AirChina
                  atc_id=B737
                  atc_flight_number=
                  atc_airline=AIR CHINA
                  atc_parking_codes=CCA
                  atc_parking_types=GATE,RAMP
                  ui_manufacturer=Boeing
                  ui_type=B733
                  ui_variation=Air China
                  description=AI
                  ui_typerole=Traffic Global AI
                  ui_createdby=Just Flight

                  [fltsim.2]
                  title=“JFAI_737_300_AllNippon”
                  sim=TrafficGlobal
                  model=
                  panel=x
                  sound=
                  texture=AllNippon
                  atc_id=B737
                  atc_flight_number=
                  atc_airline=ALL NIPPON
                  atc_parking_codes=ANA
                  atc_parking_types=GATE,RAMP
                  ui_manufacturer=Boeing
                  ui_type=B733
                  ui_variation=All Nippon
                  description=AI
                  ui_typerole=Traffic Global AI
                  ui_createdby=Just Flight

                  So in other words…I would open the document in Notepad++ and want to put the apostrophe at the beginning and end of just the “Title line” for each fltsim section…1,2,3, etc… Might have to do a couple thousand of these…lol

                  i learned so much yesterday on the little I did that now I am dangerous!!!

                  BobM.

                  Alan KilbornA 1 Reply Last reply Reply Quote 0
                  • Alan KilbornA
                    Alan Kilborn @Carolina Number 1
                    last edited by Alan Kilborn

                    @Carolina-Number-1 said in Paste every "say 37th line" apx..:

                    So, presuming you have:

                    title=JFAI_737_300_AirChina

                    and you want that to be changed into:

                    title="JFAI_737_300_AirChina"

                    and that is the only thing you have on the line…

                    Then you could do:

                    find: (?-s)^title=(.+)
                    repl: title="${1}"
                    mode: Regular expression

                    There are of course some other ways, but this is probably the simplest, and I don’t think it is really worth showing a total noob some of the other ways at this point, because the confusion factor would just skyrocket.

                    Carolina Number 1C 2 Replies Last reply Reply Quote 1
                    • Carolina Number 1C
                      Carolina Number 1 @Alan Kilborn
                      last edited by Carolina Number 1

                      @Alan-Kilborn

                      Hey Thanks!! Never been called a a total noob before… I am so honored…lol

                      Warmest Greets…Stay Safe!!

                      BobM.

                      1 Reply Last reply Reply Quote 0
                      • Carolina Number 1C
                        Carolina Number 1 @Alan Kilborn
                        last edited by

                        @Alan-Kilborn worked like a charm…zowie :)

                        BobM.

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

                          Hi, @carolina-number-1 and All,

                          I guess that you want to surround any text after the string title = with two double-quotes "

                          If so, this regex S/R is the right one :

                          SEARCH (?-si)^(title\x20*=\x20*+)(?!")(.+)

                          REPLACE \1"\2"

                          As usual :

                          • Tick the Wrap around option and select the Regular expression search mode

                          • Click, either, several times on the Replace button or once only on the Replace All button

                          Notes :

                          • The part (?-si)^(title\x20*=\x20*) selects the string title, with that exact case ( (?-i) ), at beginning of line ( ^ ), followed with the equal sign ( = ), possibly preceded and/or followed with space char(s) ( \x20* ) and stores all in group 1

                          • Remark that the \x20*+ regex range of space chars, after the equal sign, defines an atomic structure. This means that no backtracking will be done, by the regex engine, in that range of spaces. In other words, this means : "search for possible space chars, after the = sign, and verify, immediately that the next char is not a double-quote sign "

                          • As said above, the part (?!") is a negative look-ahead structure. which tests, if, at current position, a " symbol can be found. If not, the condition is considered as TRUE and the current match attempt is OK, so far

                          • Then, the part (.+) matches the remaining standard characters of current line and stores them as group 2

                          • The replacement part \1"\2" rewrites these two groups, with two doubles quotes surrounding the group 2

                          Remark that the (?!") regex part avoids to surround an area, already surrounded with double-quotes, which would give, for instance, ““some text””, in case you would click twice on the Replace All button

                          @carolina-number-1, do not bother about atomic quantifiers and look-around structures, for the moment !, You have plenty of basic regex expressions to learn before ;-))

                          Best Regards,

                          guy038

                          Carolina Number 1C 1 Reply Last reply Reply Quote 0
                          • Carolina Number 1C
                            Carolina Number 1 @guy038
                            last edited by

                            @guy038 Thank you!!

                            BobM.

                            1 Reply Last reply Reply Quote 0
                            • Alan KilbornA
                              Alan Kilborn
                              last edited by

                              @Alan-Kilborn said in Paste every "say 37th line" apx..:

                              I don’t think it is really worth showing a total noob some of the other ways at this point, because the confusion factor would just skyrocket.

                              It appears that I was disagreed with on the above point.

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

                                Hi, All,

                                I’m going to explain the benefit of the atomic quantifiers, by adding the + symbol after the greedy quantifier !

                                Let’s consider these four lines text below, with 2 without leading space chars and 2 with four leading space chars :

                                abc
                                "abc"
                                    abc
                                    "abc"
                                

                                And let’s suppose that we want to surround the string abc with double quotes, only in line 1 and 3

                                You could say that the following search regex

                                SEARCH ^(\x20*)(?!")(.+)

                                Would match the line 1 and 3, only. However, it also matches the fourth line ! Why ?


                                Well, a very important thing to remember, about regex engines, is that, regex engines try, by all means, to get an overall match. In other words, they, desperately, try to find a solution, by testing all the possible combinations, provided by the search regex !

                                So, let’s imagine the regex engine at beginning of the line 4 of our sample :

                                • Once the regex engine has consumed all the possible space chars ( ^(\x20*) ), it tests if the next char is not a " character. As it’s false, this means that the negative look-ahead return FALSE and no match can occur

                                • The regex engine don’t give up and backtracks, considering all space chars, but the last, as matching the ^(\x20*) regex, too

                                • Thus, the next char is the last space character, which does match the last .+ regex part and is not a double quote ! So, the (?!") part return TRUE and the overall regex can match the fourth line.

                                • But we do not want this match as, after replacement, we would get "" ......."". So, in our regex, the solution is to use the atomic quantifier *+, instead of the greedy quantifier *. Indeed, when the regex engine meets an atomic quantifier, it will never backtrack inside the quantified area !

                                SEARCH ^(\x20*+)(?!")(.+)

                                • Thus, after matching all the space chars, it just tests if the next char is not a " character. As it’s false, this means that the negative look-ahead is FALSE. But, as the backtracking feature is forbidden, the regex engine stops and returns no match , for the fourth line contents

                                As a summary, by preventing the regex engine from backtracking, the atomic quantifiers may reduce, drastically, the number of combinations, tested by the regex engine, and/or avoid testing some alternatives, particularly in recursive regexes.That leads to safer and quicker regexes’s execution !

                                BR

                                guy038

                                Alan KilbornA 1 Reply Last reply Reply Quote 0
                                • Alan KilbornA
                                  Alan Kilborn @guy038
                                  last edited by

                                  @guy038

                                  Ok, Guy is putting on a “clinic”, in this case for “All”.
                                  In that case, “Nice Job!”

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