##title##

2011年5月4日

正規表示式 Regular Expression(Notepad++可用)

今天有個純文字文件貼到excel的難題類似這樣:
  
haha
{
aaa 1
bbb 1
 ccc  1
}
haha
{
aaa 2
bbb 2
 ccc  2
}


##more##

要在excel排成類似這樣的表格
  
aaa bbb ccc
1 1 1
2 2 2


把一些tab字元取代後,貼在excel可以用連結的方式來排列,但頭痛的是又不是每一筆資料都是長這樣,可能會來個亂入的字串。

  
haha
{
aaa 1
bbb 1
 ccc  1
}
haha
{
aaa 2
bbb 2
 ccc  2
}
haha
{
aaa 3
bbb 3
 ccc  3
ddd 3
}
haha
{
aaa 2
bbb 2
 ccc  2
}


而且後面的數字可能還不同長度。一開始想到的解法是用萬用字元把它取代掉,但notepad++用「*」不是萬用字元,所以就先投降了。回家查了一下,這個方式應該可以用「正規表示式 Regular Expression」來解決。

承上例,可取代「ddd .*」

僅做個記錄。

「正規表示式 Regular Expression料可參考:
正規表示式 Regular Expression @ 就是愛程式 by Ate

第十二章、正規表示法與文件格式化處理 @ 鳥哥的 Linux 私房菜 鳥哥


2014/7/12補充:
[Notepad++] 取代功能Regular Expression模式
「\r\n」可用以取代斷行


2014/11/4補充:
用類型表示
搜尋:(.)
取代:$1\r\n
可以把任意字元存入變數,然後取代為變數後面加上斷行

沒有留言:

張貼留言