NumberValidationUtils.smali
.class public Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;
.super Ljava/lang/Object;
# direct methods
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static isDecimal(Ljava/lang/String;)Z
.registers 2
const-string/jumbo v0, "[-+]{0,1}\\d+\\.\\d*|[-+]{0,1}\\d*\\.\\d+"
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method private static isMatch(Ljava/lang/String;Ljava/lang/String;)Z
.registers 4
if-eqz p1, :cond_f
const-string/jumbo v0, ""
invoke-virtual {p1}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_11
:cond_f
const/4 v0, 0x0
:goto_10
return v0
:cond_11
invoke-static {p0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
move-result-object v0
invoke-virtual {v0}, Ljava/util/regex/Matcher;->matches()Z
move-result v0
goto :goto_10
.end method
.method public static isNegativeDecimal(Ljava/lang/String;)Z
.registers 2
const-string/jumbo v0, "^-[0]\\.[1-9]*|^-[1-9]\\d*\\.\\d*"
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method public static isNegativeInteger(Ljava/lang/String;)Z
.registers 2
const-string/jumbo v0, "^-[1-9]\\d*"
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method public static isPositiveDecimal(Ljava/lang/String;)Z
.registers 2
const-string/jumbo v0, "\\+{0,1}[0]\\.[1-9]*|\\+{0,1}[1-9]\\d*\\.\\d*"
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method public static isPositiveDecimal(Ljava/lang/String;I)Z
.registers 4
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v1, "\\+{0,1}[0]\\.[1-9]{"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string/jumbo v1, "}|\\+{0,1}[1-9]\\d*\\.[0-9]{0,"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string/jumbo v1, "}"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method public static isPositiveInteger(Ljava/lang/String;)Z
.registers 2
const-string/jumbo v0, "^\\+{0,1}[1-9]\\d*"
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method public static isRealNumber(Ljava/lang/String;)Z
.registers 2
invoke-static {p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isWholeNumber(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_c
invoke-static {p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isDecimal(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_e
:cond_c
const/4 v0, 0x1
:goto_d
return v0
:cond_e
const/4 v0, 0x0
goto :goto_d
.end method
.method public static isWholeNumber(Ljava/lang/String;)Z
.registers 2
const-string/jumbo v0, "[+-]{0,1}0"
invoke-static {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isMatch(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_15
invoke-static {p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isPositiveInteger(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_15
invoke-static {p0}, Lcom/sdk/orion/ui/baselibrary/utils/NumberValidationUtils;->isNegativeInteger(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_17
:cond_15
const/4 v0, 0x1
:goto_16
return v0
:cond_17
const/4 v0, 0x0
goto :goto_16
.end method