文字列セットから最初のコレクションを除くすべてのコレクションを削除します。

文字列セットから最初のコレクションを除くすべてのコレクションを削除します。

下線で区切られた複数の部分文字列で構成される文字列があります。たとえば: AbcdAEfd_hEgdgE_AbAAAAA。各部分文字列から最初のコレクションを除くすべてのコレクションを削除する必要があります。だから:

  • AbcdAEfd->Abcdfd
  • hEgdgE->hEgdg
  • AbAAAAA->Ab

結果の文字列は次のようになります。Abcdfd_hEgdg_Ab

ベストアンサー1

パラメータ置換のみを使用する純粋なbashソリューション:

#! /bin/bash
suffix=${1#*[aeiou]}
prefix=${1%$suffix}
vowel=${prefix: -1}
prefix=${prefix%?}                  # Remove the vowel from the prefix
suffix=${suffix//[aeiou]/}          # Remove the vowels.
echo "$1 -> $prefix$vowel$suffix."

おすすめ記事