2つの異なる正規表現が必要です。1つ目は、年の下2桁に一致するものです。たとえば、「2010」がある場合は、「10」を取得したいと思います。私は次のようなことをしてみました
\d{2}\Z
しかし、それは機能しませんでした。2つ目は、「and」で区切られたさまざまな名前と名前の最初の3文字を取得する2つです。例えば私は持っています
John Smith and Paul Anthony Doe
「SmiDoe」を返す正規表現が欲しいのですが、Doeが存在しない場合は「Smi」のみを返します。2つ以上の名前と名前でも機能するのは素晴らしいことです。
編集:提供されたソリューションは完全に機能し、Vim用のUltisnipsプラグインを使用してbibtex(.bib拡張子)スニペットを構築するためにそれらを使用しようとしています。私が試したスニペットは
snippet ta "Test" b
@Article{${1/\s(\w{,3})\w*($|\sand)/$1/g}${2/\d{2}$/$0/g},
author={${1:John Smith and Paul Anthony Samuelson}}
year={${2:2010}}}
endsnippet
問題は、スニペットを展開すると「JohnSmi Paul AnthonySam2010」が表示され、「SmiSam10」が取得されることです。