UNIXKornシェルで開始文字から終了文字までの部分文字列を取得する方法

ハビエルサラス

開始文字から終了文字までの部分文字列を取得して、それが持つ「日付形式」を識別する簡単な方法があるかどうかを確認しようとしています。機能しているソリューションがありますが、もっと簡単な方法があるかどうかを探しています。それを行うには。

EXAMPLE:
file_name=file_test_<yyyymmdd>_format.xls

SUBSTRING FROM "<" to ">"
<yyyymmdd>

これは私が持っていて働いているものです:

file_name="test_file_<mmddyyyy>_test"
format_date=""
Char_Found=0
index=0
while [ $index -lt ${#file_name} ]; do
   letter=$(echo $file_name | cut -c$(( $index + 1 )))
   if [ $letter == "<" ]; then
     Char_Found=1
   fi

   if [ $letter == ">" ]; then
      format_date=${format_date}">"
      break
   fi

   if (( ${Char_Found} )); then
      format_date=${format_date}"${letter}"
   fi

   index=$(( $index + 1 ))
done

echo "Format string: ${format_date}"

#OUTPUT: <mmddyyyy>
ジャノス

投稿された実装は長いだけでなくcut、すべての文字に対してループで呼び出すため、非常に非効率的です。

Bashのパラメーター展開と呼ばれるものを使用すると、より単純ではるかに効率的なソリューションが可能になります。これは、kshでも問題なく機能するようです。

file_name="test_file_<mmddyyyy>_test"
format_date=$file_name
format_date="<${format_date#*<}"    # chop off the beginning until <
format_date="${format_date%%>*}>"   # chop off the end from >
echo "Format string: ${format_date}"

出力:

Format string: <mmddyyyy>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

PHPで開始文字と終了文字を使用して文字列の部分文字列を取得するにはどうすればよいですか?

分類Dev

文字列から単語で始まる部分文字列を抽出する方法

分類Dev

空白の開始位置と終了位置を使用して文字列から部分文字列を取得する

分類Dev

指定された部分文字列で始まる単語の最初から最後まで部分文字列を取得する方法-Ruby

分類Dev

特殊文字に基づいてbashまたはシェルの行から部分文字列を取得する方法

分類Dev

特定の文字で開始および終了するすべての部分文字列を検索します

分類Dev

Linux シェルで文字列から部分文字列を抽出する

分類Dev

文字の4番目の出現からPSQLで指定された文字列の終わりまで部分文字列を取得する方法

分類Dev

文字列から、SOTで始まりEOTで終わる部分文字列を削除します

分類Dev

文字列から、SOTで始まりEOTで終わる部分文字列を削除します

分類Dev

{{で始まり}で終わる文字列内のすべての部分文字列を検索する方法

分類Dev

Javaで文字cから文字cまでの部分文字列を取得する方法は?

分類Dev

開始文字列と終了文字列を使用して、長い文字列から部分文字列を抽出しますか?

分類Dev

既知の位置で始まり、特定の文字で終わる文字列から部分文字列を削除できますか?

分類Dev

位置から長さまでの文字列から部分文字列を取得するバッチファイル

分類Dev

位置から長さまでの文字列から部分文字列を取得するバッチファイル

分類Dev

特定の文字で始まる部分文字列を削除します

分類Dev

末尾から始まる文字列から逆部分文字列を取得します

分類Dev

で始まり、で終わる単語の部分文字列を検索する

分類Dev

Javaで文字列から大文字の部分文字列を抽出する方法は?

分類Dev

Javaで文字列から部分文字列を取得する

分類Dev

Javaで文字列から部分文字列を取得する

分類Dev

部分文字列を含む、何かで開始および終了する文字列を取得するにはどうすればよいですか?

分類Dev

Pythonで特定の文字で開始および終了する文字列内の部分文字列のインデックスを検索して出力します

分類Dev

Java:特定の文字の後に始まる文字列から部分文字列を取得する

分類Dev

Fishシェルで部分文字列を抽出する方法は?

分類Dev

大きな文字列から正規表現で始まり、正規表現で終わるすべての部分文字列を抽出します

分類Dev

指定された文字列で1で始まり1で終わる部分文字列の数を出力します

分類Dev

Javaで文字列から部分文字列を抽出する方法

Related 関連記事

  1. 1

    PHPで開始文字と終了文字を使用して文字列の部分文字列を取得するにはどうすればよいですか?

  2. 2

    文字列から単語で始まる部分文字列を抽出する方法

  3. 3

    空白の開始位置と終了位置を使用して文字列から部分文字列を取得する

  4. 4

    指定された部分文字列で始まる単語の最初から最後まで部分文字列を取得する方法-Ruby

  5. 5

    特殊文字に基づいてbashまたはシェルの行から部分文字列を取得する方法

  6. 6

    特定の文字で開始および終了するすべての部分文字列を検索します

  7. 7

    Linux シェルで文字列から部分文字列を抽出する

  8. 8

    文字の4番目の出現からPSQLで指定された文字列の終わりまで部分文字列を取得する方法

  9. 9

    文字列から、SOTで始まりEOTで終わる部分文字列を削除します

  10. 10

    文字列から、SOTで始まりEOTで終わる部分文字列を削除します

  11. 11

    {{で始まり}で終わる文字列内のすべての部分文字列を検索する方法

  12. 12

    Javaで文字cから文字cまでの部分文字列を取得する方法は?

  13. 13

    開始文字列と終了文字列を使用して、長い文字列から部分文字列を抽出しますか?

  14. 14

    既知の位置で始まり、特定の文字で終わる文字列から部分文字列を削除できますか?

  15. 15

    位置から長さまでの文字列から部分文字列を取得するバッチファイル

  16. 16

    位置から長さまでの文字列から部分文字列を取得するバッチファイル

  17. 17

    特定の文字で始まる部分文字列を削除します

  18. 18

    末尾から始まる文字列から逆部分文字列を取得します

  19. 19

    で始まり、で終わる単語の部分文字列を検索する

  20. 20

    Javaで文字列から大文字の部分文字列を抽出する方法は?

  21. 21

    Javaで文字列から部分文字列を取得する

  22. 22

    Javaで文字列から部分文字列を取得する

  23. 23

    部分文字列を含む、何かで開始および終了する文字列を取得するにはどうすればよいですか?

  24. 24

    Pythonで特定の文字で開始および終了する文字列内の部分文字列のインデックスを検索して出力します

  25. 25

    Java:特定の文字の後に始まる文字列から部分文字列を取得する

  26. 26

    Fishシェルで部分文字列を抽出する方法は?

  27. 27

    大きな文字列から正規表現で始まり、正規表現で終わるすべての部分文字列を抽出します

  28. 28

    指定された文字列で1で始まり1で終わる部分文字列の数を出力します

  29. 29

    Javaで文字列から部分文字列を抽出する方法

ホットタグ

アーカイブ