Jump to content

regexp help


wisem2540
 Share

Go to solution Solved by mikell,

Recommended Posts

I have a block of text, as follows

File-based write filter configuration for the current session:
    filter state: enabled.
    overlay cache data compression state: enabled.
    overlay cache threshold: 128 MB.
    overlay cache pre-allocation: disabled.
    size display: actual mode.
    protected volume list: (none)
    write through list of each protected volume:

File-based write filter configuration for the next session:
    filter state: enabled.
    overlay cache data compression state: enabled.
    overlay cache threshold: 128 MB.
    overlay cache pre-allocation: disabled.
    size display: actual mode.
    protected volume list: (none)
    write through list of each protected volume:

All I want to return is Current session filter state, like this piece...

File-based write filter configuration for the current session:
    filter state: enabled.

 

I figure I could end at the period after "Enabled"

So I tried this...

File-based write filter configuration for the current session:([^/]+)\.

However, this returns all the way to file FINAL period in the block of text.  I want it to stop at the FIRST period.  Can anyone help?

Link to comment
Share on other sites

Something like this ?

#Include <Array.au3>

$sText = "File-based write filter configuration for the current session:" & @CRLF &  _ 
         "filter state: enabled." & @CRLF &  _ 
         "overlay cache data compression state: enabled." & @CRLF &  _ 
         "overlay cache threshold: 128 MB." & @CRLF &  _ 
         "overlay cache pre-allocation: disabled." & @CRLF &  _ 
         "size display: actual mode." & @CRLF &  _ 
         "protected volume list: (none)" & @CRLF &  _ 
         "write through list of each protected volume:" & @CRLF &  _ 
         @CRLF &  _ 
         "File-based write filter configuration for the next session:" & @CRLF &  _ 
         "filter state: enabled." & @CRLF &  _ 
         "overlay cache data compression state: enabled." & @CRLF &  _ 
         "overlay cache threshold: 128 MB." & @CRLF &  _ 
         "overlay cache pre-allocation: disabled." & @CRLF &  _ 
         "size display: actual mode." & @CRLF &  _ 
         "protected volume list: (none)" & @CRLF &  _ 
         "write through list of each protected volume:"

ConsoleWrite($sText)


$aFilterSession = StringRegExp($sText, "(?i)File-based write filter configuration for the current session:\R\h*filter state:\h*([^.]+)", 1)

; or
; $aFilterSession = StringRegExp($sText, "(?is)current session:.+?((?:en|dis)+abled)", 1)
; or ... else ...

_ArrayDisplay($aFilterSession)
Edited by jguinch
Link to comment
Share on other sites

  • Moderators

wisem2540,

Or perhaps this: :)

$sText = "File-based write filter configuration for the current session:" & @CRLF &  _
         "filter state: enabled." & @CRLF &  _
         "overlay cache data compression state: enabled." & @CRLF &  _
         "overlay cache threshold: 128 MB." & @CRLF &  _
         "overlay cache pre-allocation: disabled." & @CRLF &  _
         "size display: actual mode." & @CRLF &  _
         "protected volume list: (none)" & @CRLF &  _
         "write through list of each protected volume:" & @CRLF &  _
         @CRLF &  _
         "File-based write filter configuration for the next session:" & @CRLF &  _
         "filter state: enabled." & @CRLF &  _
         "overlay cache data compression state: enabled." & @CRLF &  _
         "overlay cache threshold: 128 MB." & @CRLF &  _
         "overlay cache pre-allocation: disabled." & @CRLF &  _
         "size display: actual mode." & @CRLF &  _
         "protected volume list: (none)" & @CRLF &  _
         "write through list of each protected volume:"

$sFilterSession = StringRegExpReplace($sText, "(?Us)^(.*\.).*$", "$1")

ConsoleWrite($sFilterSession & @CRLF)
M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...