我在 .txt 檔案中有一個非常大的資料輸出,如下所示:
value1="1",value2="2",value3="test3",value4="4"
value1="1",value2="2",value3="anothertest3",value4="4"
value1="1",value2="2",value3="lasttest3",value4="4"
我想提取 value3 中引號內的值,使結果如下所示:
test3
anothertest3
lasttest3
我該怎麼做呢?
答案1
- 轉到搜尋->取代。
- 放找什麼到
^value1=".*",value2=".*",value3="(.{10})",value4=".*"$
。 - 放用。到
\1
。 - 放搜尋模式到
Regular expression
。 - 按全部替換。
答案2
使用搜尋模式=Regular Expression
搜尋:^.*,value3="([^"]*)".*$
替換為:\1
答案3
薩姆的解決方案對我來說不起作用。
對於您提供的範例數據,以下正規表示式有效。它對長度沒有任何假設,除了該值不能包含 a "
,即使它被轉義(取決於您的資料來源,這一點值得一提)。
這也不假設它前面有一個value1
或value2
。它們可以選擇性地被省略,或者可以選擇性地有附加的或以其他方式無序的值。
- 搜尋 -> 取代(或Ctrl+ h)
- 將搜尋模式設定為正規表示式
輸入以下內容找什麼場地
^.*value3="([^"]*)".*$
放用。到
$1
- 全部替換