2017-09-06 33 views
0

我有一個基於字符定位的文件。我需要收集列126和136之間的值以導出它們。Notepad ++將文本從字符x中分離出來y

所以我的文件會有這樣

alskdfjdskfl;ja 21.32  asdlfkjasdklfsd 
alskdfjdskfl;ja 976546.72 asdlfkjasdklfsd 
alskdfjdskfl;ja 1027.32 asdlfkjasdklfsd 
alskdfjdskfl;ja 2945.5 asdlfkjasdklfsd 
alskdfjdskfl;ja 245.78 asdlfkjasdklfsd 

垃圾字符並不重要線路。我只想要中間的數字。垃圾字符不遵循特定模式,除了它們在行中的位置。換句話說,我想要的信息將總是從第126列開始,最遲不會超過136.

有關是否可以在Notepad ++中執行此操作的任何想法?否則,我將不得不採取另一種方法。

回答

1
  • 按Ctrl + H^
  • 查找內容:^.{125}(.{10}).*$
  • 更換與:$1
  • 全部替換

說明:

^   : beginng of line 
    .{125} : 125 any character but newline 
    (  : start roup 1 
    .{10} : 10 any character but newline 
)   : end group 
    .*  : 0 or more any character but newline 
$   : end of line 

更換:

$1  : content of group 1 
  • 檢查線上纏繞
  • 檢查正則表達式
  • 不檢查. matches newline
+0

這工作。謝謝!! – Xenoranger

0

只要垃圾字符不被括號之間的正則表達式匹配這可能是工作: Search->Find... Tab: Replace Search Mode: Regular expression Find what: .*\s+(\d+\.\d+)\s+.* Replace with: \1 [Replace All]

相關問題