考慮測試端口號的正則表達式。正則表達式在Android中的端口號?
(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3})
這在Android中無效。
任何想法是什麼端口號正則表達式應該看起來像在Android?
考慮測試端口號的正則表達式。正則表達式在Android中的端口號?
(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3})
這在Android中無效。
任何想法是什麼端口號正則表達式應該看起來像在Android?
一般來說,正則表達式對於數值驗證並不是很好。我建議在匹配的組上使用Integer.parseInt
,然後檢查它是否小於65536.
同意。我嘗試使用正則表達式驗證tokenizer的整數範圍,並試圖讓它正確無誤。匹配[0-9] +,然後將其轉換爲數字格式。 – colithium 2010-10-08 22:49:27
"(6553[0-5]|655[0-2]\\d|65[0-4]\\d{2}|6[0-4]\\d{3}|[1-5]\\d{4}|[1-9]\\d{0,3})"
適用於a Java Regex test page假設您正在編寫Java代碼。您可能必須避免Java字符串文字的反斜槓才能正常工作。但是,這個表達式並不是零是有效的端口號。
這是舊的,但如果有人想知道如何使用tryparse,開發人員提到的一個:
int portNumber;
if (int.TryParse(inputPortValue, out portNumber)
&& portNumber >= 256
&& portNumber <= 0){
error = "Invalid Port: " + inputPortValue
". Please verify.";
return false;
}
有沒有方法稱爲int.TryParse()... – 2018-02-23 10:01:28
它實際上是在C#中。 https://stackoverflow.com/questions/15294878/how-the-int-tryparse-actually-works不知何故錯過了它是Android的問題或可能稍後編輯。 – sgupta 2018-02-24 03:17:27
定義無效?不編譯,不符合你想要的? – Jon 2010-10-08 22:39:13