1. ホーム
  2. ruby

[解決済み] Rubyで引用符で囲まれた文字列が基本的に整数であるかどうかをテストする方法

2022-05-12 16:36:06

質問

関数が必要です。 is_an_integer という関数が必要です。

  • "12".is_an_integer? はtrueを返します。
  • "blah".is_an_integer? はfalseを返します。

Rubyでこれを行うにはどうしたらよいでしょうか。 私は正規表現を書きたいのですが、私が知らないこのためのヘルパーがあると仮定しています。

どのように解決するのですか?

正規表現を使えばいいんです。以下は@janmさんの提案による関数です。

class String
    def is_i?
       !!(self =~ /\A[-+]?[0-9]+\z/)
    end
end

wich さんのコメントによる編集版です。

class String
    def is_i?
       /\A[-+]?\d+\z/ === self
    end
end

正の数だけチェックする必要がある場合

  if !/\A\d+\z/.match(string_to_check)
      #Is not a positive number
  else
      #Is all good ..continue
  end