Loading ...
Sorry, an error occurred while loading the content.

20495Re: [Clip] Re: modifying format of stats tool output & concatenating stats from many files

Expand Messages
  • Alec Burgess
    Mar 5, 2010
      Sheri (silvermoonwoman@...) wrote (in part) (on 2010-03-01 at
      > Maybe it would help to know that that clip is meant to be run from the
      > clipbar while clipedit is the active document. It shows the names of
      > variables found in clip currently being edited. GetDocListAll gives
      > the opportunity to format the matches, so they are formatted with the
      > ClearVariable command in front of each one. The purpose is just to
      > help make the list of ClearVariable commands needed to clear only the
      > variables actually Set by the clip being written.
      > It only finds %xxx% if:
      > - it follows a line start followed by ^!Set or ^!SetCode or ^!SetArray
      > and one space, OR if it follows a semicolon (anywhere on a line) plus
      > an optional space
      > - it is followed by an equal sign
      I was on holiday (got back yesterday) and am just noodling thru the
      large number of posts during the past week.

      I read this thread but didn't test any of the example code.

      > > > ^!Set %varnames%="
      > ^$GetDocListAll("(?i)(^\^\!Set(Array|Code)?\x20|;\x20?)\K%[\d\pL_]+?%(?=\=)";"^!ClearVariable
      > $0\r\n")$"

      Sheri: wrt to your "find variables for clearing" clip. You appear from
      the comments but haven't checked the regex itself, to be expecting a
      variable xxx to be defined as:
      ^!set %xxx%=asdf
      Following works though I use the construct without %...% only
      accidentally :-[ :
      ^!set xxx=asdf
      ^!info ^%xxx%

      Will your clip capture this usage?

      > "(?=" signifies a lookahead assertion. There is an equal sign inside
      > the look ahead assertion, (?=\=). It may not need that backslash, but
      > it makes it easier to see (at least for me). So, an equal sign must
      > follow (looking ahead) the %xxx% to be a match. The equal sign is not
      > actually part of the matched text.
      > The search is case insensitive so that ^!set works as well as ^!Set or
      > any other mixed case that might be found.

      Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)

      [Non-text portions of this message have been removed]
    • Show all 26 messages in this topic