言語にとらわれない。
一般的なスクリプト言語が優先される任意の言語でソリューションを提供します。
文字列を処理します... これらの 4 つを例として配列で使用します。
examples = ["The quick brown fox jumps over the lazy dog.(JSON-CAT5).tar.gz",
"The quick brown fox jumps over the lazy dog.(JSON-CAT5).txt",
"The quick & swift mule, kicks the lazy dev.txt",
"Now we-come,to.the_payoff.txt"]
以下のルールに従って変換してください。
- 他の規則に関係なく、最初の単語は常に大文字になります。
- ルール 3 または 4 でカバーされていない限り、すべての単語は大文字で表記されます。
- ホワイトリストに表示される部分文字列は、大文字と小文字が区別されます。この例では
["the", "JSON"]
- ブラックリストに表示される部分文字列は、文字列から削除されます。私たちの例では
["-CAT5","(",")"]
- 正規表現に一致する部分文字列
/(\.tar)?\.[^.]*$/i
は常に小文字です。 [" ", "_", ",", "-"]
["."] に変換される句読点のリスト。- 複数
"."
つまり。"..."
シングルに置き換えられ"."
ます(つまり、スクイーズされます)。 - セパレーター「.」、ブラックリスト、ホワイトリストはすべて簡単に交換できる必要があり、上部に vars / arrays として指定するだけで完全に受け入れられます。
この場合、最終的には次のようになります。
The.Quick.Brown.Fox.Jumps.Over.the.Lazy.Dog.JSON.txt
The.Quick.Brown.Fox.Jumps.Over.the.Lazy.Dog.JSON.tar.gz
回答は以下に提供されています。他の言語での代替案を参照してください。
アップデート
テストケースにさらにいくつかのサンプル文字列を追加しました。