フォームの文字列を一致させたい:
123
.123
1.123
そして、正規表現に次の文字列を使用しています
@"^\\d*(?:\\.\\d+)?$"
ただし、次の形式の文字列にも一致します
1.2.3
1..2..3
123...
私の正規表現の何が問題になっていますか? 文字列に前述の数値形式以外のものを含めたくないため、 ^
andを使用しました。$
編集:
のような文字列で一致するものをログに記録した78..7
ところ、一致する場所が 0 で長さが 0 で、結果として "" が一致することがわかりました。何か案は?長さが 0 の場合、範囲の場所を NSNotFound にするべきではありませんか? その場合、正規表現は問題なく、 !length を確認するだけでよいと思いますが、それは不要な回避策のようです。