Curl Global Community
文字列の中身が数字かどうか - Printable Version

+- Curl Global Community (https://communities.curl.com)
+-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1)
+--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2)
+--- Thread: 文字列の中身が数字かどうか (/showthread.php?tid=307)



文字列の中身が数字かどうか - umemura - 10-17-2011

String の中の値が数字かどうかを確かめる良い方法はありますか?

Code:
{let s:Strign = "123"}
{if {String {s.to-int}} == s then
    {popup-message "int"}
}

この方法だと、int型は判断できるのですが、小数点付きの値などもいちいちやっていくのが面倒で・・・



RE: 文字列の中身が数字かどうか - c-s - 10-17-2011

数字かどうかというのはどこまで厳しく確認するつもりでしょうか。

正規表現使えますね。
trim->正規表現 ("\d*\.?\d*"的に)->MatchStateを使ったり...



RE: 文字列の中身が数字かどうか - hokada - 10-17-2011

こんなんでどうですか?

Code:
{define-proc public {dou? str:String}:bool
    {return {regexp-match? "^(-?)([1-9][0-9]*)?[0-9](\\.[0-9]*[1-9])?$", {str.trim-clone}}}
}