一連の非浮動小数点数が文字列にないかどうかを確認する方法

ヘイズロー

Bashでは、

文字列内の非浮動小数点数の範囲を検索したい。

私がそのような文字列を持っている場合:

"1.4.jpg 2.005.jpg 003: Blah.jpg Blah4.jpg 4.5.jpg"

そして、firstNum-lastNumという数字が欠落しているかどうかを調べたいと思います。言う、もし

firstNum=1
lastNum=5

関数は

「1つが欠けている、2つが欠けている、5つが欠けている」

文字列内の非浮動小数点数を見つけるのは比較的簡単ですが、私のスクリプトを混乱させるのは、文字列の「2.005.jpg」部分です。私のスクリプトは、5がfloat 2の一部であることを認識する方法を理解していないため、無視する必要があります。

数字に先行ゼロがあるか、「[0-9]」があるかを言います。その前では、無視してください。しかし、残念ながら、先行ゼロをいくつでも含む数値のサポートが必要です。

oliv

の使用awk反対しない場合は、次のスクリプトを使用できます。

echo "1.4.jpg 2.005.jpg 003: Blah.jpg Blah4.jpg" | \
   awk -v min=1 -v max=5 -v RS="[^0-9. ]+" '
     ($0+0)!~/\./&&/[0-9]+/{a[$0+0]}
     END{for(i=min;i<=max;i++)if(!(i in a))print i " is missing"}'

これはGNUawkスクリプトであり、レコード区切り文字RSを使用して(浮動小数点の)数値のみで行を分割します。

秘訣は、見つかった数値に0を追加し、それがまだ10進数形式(ドットなし.であることを確認することですその場合、番号は配列に格納されaます。

このENDステートメントは、min(1)からmax(5)までのすべての10進数をループし、その数値が配列の一部でない場合はメッセージを出力しますa

posix準拠の代替スクリプトは次のとおりです。

echo "1.4.jpg 2.005.jpg 003: Blah.jpg Blah4.jpg" | \
   awk -v min=1 -v max=5 '
     {
        split($0,n,"[^0-9. ]+"); 
        for(i in n){
           if((n[i]+0)!~/\./&&n[i]~/[0-9]+/){
             a[n[i]+0]
           }
        }
     }
     END{for(i=min;i<=max;i++)if(!(i in a))print i " is missing"}'

主な違いは、split()を置き換える関数の使用ですRSsplit入力文字列を分割し、数値を配列に入れnます。次に、配列要素がチェックされ、a10進数の場合は配列入れられます

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

入力文字列が正の整数/浮動小数点数であるかどうかを確認します

分類Dev

これは、文字列が浮動小数点数を表すかどうかを確認するための悪い方法ですか?

分類Dev

Pythonで文字列を浮動小数点数に変換できるかどうかを確認する

分類Dev

浮動小数点数が別の数の整数乗であるかどうかを確認する方法

分類Dev

文字列が整数か浮動小数点数かを確認する

分類Dev

.NETで1つの浮動小数点数が別の浮動小数点数の倍数であるかどうかを確認する

分類Dev

文字列から浮動小数点数のみを解析するにはどうすればよいですか?

分類Dev

整数/浮動小数点数に特定の数値が含まれているかどうかの確認

分類Dev

入力が整数の浮動小数点数か文字列か、その他のものかどうかを確認しますか?

分類Dev

文字列が負の数と浮動小数点数で始まっているかどうかを確認するにはどうすればよいですか?[python]

分類Dev

Javaで倍精度浮動小数点数よりも浮動小数点数を使用する方が良い状況はどのような場合ですか?

分類Dev

異なる結果が浮動小数点処理の違いによるものかどうかを確認する方法は?

分類Dev

値が浮動小数点かどうかを確認する方法

分類Dev

「浮動小数点数の文字列」を全体と小数部分に分割する最も安全な方法は何ですか

分類Dev

C#で浮動小数点変数の値が正確に等しいかどうかを確認する正しい方法は何ですか?

分類Dev

文字列から浮動小数点数を抽出する方法

分類Dev

中央に浮動小数点数がある文字列のリストをソートするにはどうすればよいですか?

分類Dev

浮動小数点数の配列を画像に変換するにはどうすればよいですか?

分類Dev

オブジェクトを使用せずに文字列、整数、浮動小数点数を連結するにはどうすればよいですか?

分類Dev

引数がLaTeXの浮動小数点であるかどうかを確認する方法

分類Dev

文字列エンコードされた浮動小数点数の配列を浮動小数点数の配列に非整列化する方法は?

分類Dev

文字列のリストを浮動小数点数の配列に変換するにはどうすればよいですか?

分類Dev

jsの文字列から各整数または浮動小数点数(正または負)を抽出するにはどうすればよいですか?

分類Dev

Ruby:日時文字列をエポックタイムの浮動小数点数に変換するにはどうすればよいですか?

分類Dev

Python:テキストファイルから一連の文字列を浮動小数点数として読み取るにはどうすればよいですか?

分類Dev

31.1 Mなどの文字列番号を数値/浮動小数点数に変換しますか?

分類Dev

浮動小数点数から正確な小数部分を整数として取得するにはどうすればよいですか?

分類Dev

PHPUnitを使用して、比較される浮動小数点数が正確に等しいことを確認する方法はありますか?

分類Dev

Delphiで浮動小数点数の文字列を正しくフォーマットするにはどうすればよいですか?

Related 関連記事

  1. 1

    入力文字列が正の整数/浮動小数点数であるかどうかを確認します

  2. 2

    これは、文字列が浮動小数点数を表すかどうかを確認するための悪い方法ですか?

  3. 3

    Pythonで文字列を浮動小数点数に変換できるかどうかを確認する

  4. 4

    浮動小数点数が別の数の整数乗であるかどうかを確認する方法

  5. 5

    文字列が整数か浮動小数点数かを確認する

  6. 6

    .NETで1つの浮動小数点数が別の浮動小数点数の倍数であるかどうかを確認する

  7. 7

    文字列から浮動小数点数のみを解析するにはどうすればよいですか?

  8. 8

    整数/浮動小数点数に特定の数値が含まれているかどうかの確認

  9. 9

    入力が整数の浮動小数点数か文字列か、その他のものかどうかを確認しますか?

  10. 10

    文字列が負の数と浮動小数点数で始まっているかどうかを確認するにはどうすればよいですか?[python]

  11. 11

    Javaで倍精度浮動小数点数よりも浮動小数点数を使用する方が良い状況はどのような場合ですか?

  12. 12

    異なる結果が浮動小数点処理の違いによるものかどうかを確認する方法は?

  13. 13

    値が浮動小数点かどうかを確認する方法

  14. 14

    「浮動小数点数の文字列」を全体と小数部分に分割する最も安全な方法は何ですか

  15. 15

    C#で浮動小数点変数の値が正確に等しいかどうかを確認する正しい方法は何ですか?

  16. 16

    文字列から浮動小数点数を抽出する方法

  17. 17

    中央に浮動小数点数がある文字列のリストをソートするにはどうすればよいですか?

  18. 18

    浮動小数点数の配列を画像に変換するにはどうすればよいですか?

  19. 19

    オブジェクトを使用せずに文字列、整数、浮動小数点数を連結するにはどうすればよいですか?

  20. 20

    引数がLaTeXの浮動小数点であるかどうかを確認する方法

  21. 21

    文字列エンコードされた浮動小数点数の配列を浮動小数点数の配列に非整列化する方法は?

  22. 22

    文字列のリストを浮動小数点数の配列に変換するにはどうすればよいですか?

  23. 23

    jsの文字列から各整数または浮動小数点数(正または負)を抽出するにはどうすればよいですか?

  24. 24

    Ruby:日時文字列をエポックタイムの浮動小数点数に変換するにはどうすればよいですか?

  25. 25

    Python:テキストファイルから一連の文字列を浮動小数点数として読み取るにはどうすればよいですか?

  26. 26

    31.1 Mなどの文字列番号を数値/浮動小数点数に変換しますか?

  27. 27

    浮動小数点数から正確な小数部分を整数として取得するにはどうすればよいですか?

  28. 28

    PHPUnitを使用して、比較される浮動小数点数が正確に等しいことを確認する方法はありますか?

  29. 29

    Delphiで浮動小数点数の文字列を正しくフォーマットするにはどうすればよいですか?

ホットタグ

アーカイブ