我需要一個只允許IP地址的文本框。我可以在一個Web應用程序中創建它,但是我無法在Windows應用程序中執行此操作。請幫我做..文本框只允許在Windows應用程序的IP地址
1
A
回答
2
使用此方法來驗證IP
public bool IsValidIP(string addr)
{
//create our match pattern
string pattern = @"^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.
([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$";
//create our Regular Expression object
Regex check = new Regex(pattern);
//boolean variable to hold the status
bool valid = false;
//check to make sure an ip address was provided
if (addr == "")
{
//no address provided so return false
valid = false;
}
else
{
//address provided so use the IsMatch Method
//of the Regular Expression object
valid = check.IsMatch(addr, 0);
}
//return the results
return valid;
}
1
你可以使用一個ASP.NET Regular Expression Validator
:
<asp:RegularExpressionValidator ID="regexpName" runat="server"
ErrorMessage="This expression does not validate."
ControlToValidate="yourTextBox"
ValidationExpression="RegEx here" />
然後設置ValidationExpression
於:(只允許IP地址)
\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\
+0
我想在Windows應用程序不爲web .. – Amulraj
+0
@Amulraj你可以使用yourTextBox_Validating事件來捕獲這個,然後使用我提供的正則表達式。 http://msdn.microsoft.com/en-us/library/system.windows.forms.control.validating.aspx –
1
這裏。 如果你最終得到4個字節(如0-255範圍內的數字),那麼將文本按點分割,這是一個有效的IP。
bool IsTextAValidIPAddress(string text)
{
bool result = true;
string[] values = text.Split(new[] { "." }, StringSplitOptions.None); //keep empty strings when splitting
result &= values.Length == 4; // aka string has to be like "xx.xx.xx.xx"
if(result)
for (int i = 0; i < 4; i++)
result &= byte.TryParse(values[i], out temp); //each "xx" must be a byte (0-255)
return result;
}
或者,如果你能/想利用System.Net
bool IsTextAValidIPAddress(string text)
{
System.Net.IPAddress test;
return System.Net.IPAddress.TryParse(text,out test);
}
相關問題
- 1. 文本框只允許IP地址無需驗證,直到IP被寫入C#
- 2. 只允許某些IP地址在Laravel註冊用戶5.2
- 3. 如何在Magento啓用只允許IP地址
- 4. iOS應用程序傳輸安全:允許Info.plist中的某些IP地址
- 5. 的MySQL允許從多個IP地址
- 6. 只允許從IP地址調用mvc web api
- 7. ufw只允許從我的IP地址訪問mongo(IPv6)
- 8. 只允許從node.js中的特定IP地址訪問目錄
- 9. 文本框只允許使用字母
- 10. 只允許在文本框C#數字
- 11. Cocoa應用程序的IP地址
- 12. IP地址文本框用戶控件
- 13. https適用於本地IP地址,但不適用於帶本地IP地址的應用程序端口
- 14. 只允許文本框中的整數
- 15. 允許apigee只從一個IP地址控制檯
- 16. PHP和HTML表格只允許發佈IP地址
- 17. 密碼保護,只允許一個IP地址訪問目錄?
- 18. PHP:同時只允許兩個IP地址
- 19. 停止IP地址和子域名,只允許域名
- 20. AWS IAM策略 - 允許從IP地址並允許Firehose
- 21. 確定P2P應用程序中的本地IP地址
- 22. 使用即時應用程序連接到本地IP地址
- 23. IP地址的掩碼文本框
- 24. CSS:background-image網址 - 只允許本地文件?
- 25. 文本框掩碼只允許數字
- 26. 文本框只允許浮點數
- 27. Android應用程序打印文檔在特定的IP地址
- 28. 通過只輸入IP地址,打開應用程序
- 29. 通過IP地址服務的Zend框架應用程序
- 30. Windows Store應用程序(C#/ Xaml)檢索IP地址
試試這個[IP-文本框(http://www.codeproject.com/Articles/11576/IP-TextBox) – PresleyDias
所以...它是一個Windows應用程序(Winforms,WCF,Silverlight)或Web應用程序(ASP.NET,ASP.NET MVC,...)...只是一個原因*** ASP.NET Windows應用程序* **,有點混亂...... – balexandre
根據對Darren的問題的評論(刪除asp.net)進行編輯。 –