私はPythonにまったく慣れていないので、名前のリストを\and
で区切って持っています。最初のものをカンマで、最後のものを「and」で区切って結合する必要があります。ただし、4 つ以上の名前がある場合、戻り値は最初の名前と「et al.」という語句が含まれている必要があります。だから私が持っているなら
authors = 'John Bar \and Tom Foo \and Sam Foobar \and Ron Barfoo'
「John Bar et al.」を取得する必要があります。一方、
authors = 'John Bar \and Tom Foo \and Sam Foobar'
「ジョン・バー、トム・フー、サム・フーバー」を入手する必要があります。
また、1 つの著者名だけでも機能し、その単一の名前 (および姓) を単独で返す必要があります。
私は何かをやってみました
names = authors.split('\and')
result = ', '.join(names[:-1]) + ' and '.join(names[-1])
しかし、それは明らかにうまくいきません。したがって、私の質問は、最初の著者をコンマで区切り、最後の著者を「and」で区切って取得するにはjoin
どうsplit
すればよいかということです.4人以上の著者がいる場合、最初の著者名のみが「et al.」とともに返されるべきであることを考慮してください. .