2

メールアドレスのカンマ区切りのリストがあり、実際の各アドレスの前に連絡先の名前(Gmailから)が付いています。次に例を示します。

Fred Flintstone <fred@flintstone.org>, Wilma Flintstone <wilma@flintstone.org>, Barney Rubble <barney@rubble.org>, Bamm-Bamm Rubble <bammbamm@rubble.org>,

に変換します:

fred@flintstone.org, wilma@flintstone.org, barney@rubble.org, bammbamm@rubble.org,

背景情報:連絡先のリストをwebex招待状に貼り付けようとしています。これは、電子メールアドレスのみを受け入れることができます。

Vimでの正規表現の一致を除くすべてを削除しますが、この場合、すべてのメールアドレスが1行になります。

4

3 に答える 3

4

やってみました?

:s/.\{-}\%(\(,\s*\)\|<\(.\{-}\)>\)/\1\2/g

以下も機能します。

:s/.*/\=join(map(split(submatch(0), ','), "matchstr(v:val, '<\\zs.*\\ze>')"), ', ')
于 2011-09-16T15:16:34.060 に答える
2

awkで

    echo "Fred Flintstone <fred@flintstone.org>, Wilma Flintstone <wilma@flintstone.org>, Barney Rubble <barney@rubble.org>, Bamm-Bamm Rubble <bammbamm@rubble.org>
"|awk -F'<|>' '{for (i=1;i<=NF;i++)printf (i%2==0)?$i",":""}'

またはVIMで

:%s/,/\r/g
:%s/.*<\(.*\)>/\1/g
于 2011-09-16T15:15:24.060 に答える
-2

それをExcelに入れてから、カンマでデータを分割してから、検索と置換を行って天使の括弧を取り除くことはできませんか

なんらかのコードを使用していない限り、100,000 のアドレスを持っていない限り、これが最も簡単です。

于 2011-09-16T15:17:55.910 に答える