我如何检查某些字符是否写在面前

时间:2018-06-05 12:14:02

标签: c#

我有一个程序将dns“翻译”为IP地址,我想查看 如果有什么东西在'。'的前面。对于testlpe,用户给出: 的 Google.com 然后我想检查是否有东西写在'。'的前面。所以用户不能犯任何程序错误。

我已经有了一个方法来检查是否有'。'在文中

if(Input.Text.Contains('.'))
{
    //Codeblock
}

3 个答案:

答案 0 :(得分:5)

Uri class可以真正帮助您解决此问题,因为它对URL验证非常有用。

IsWellFormedUriString方法

  

通过尝试使用字符串构造URI来确定字符串是否格式正确,并确保字符串不需要进一步转义。

如果字符串格式正确,则返回true;别的假。

bool valid = Uri.IsWellFormedUriString(url, UriKind.RelativeOrAbsolute);

答案 1 :(得分:2)

您可以使用.IndexOf('.')获取.的索引如果为0,那么您可以确定.前面没有任何内容 Docs

答案 2 :(得分:0)

您可以使用String.IndexOf()

// find the dot
var dotLocation = Input.Text.IndexOf(".", StringComparison.Ordinal);

// if the dot exists in the text..
if (dotLocation > 0)
{
    // ..return the text before the dot
    // in your "Google.com" example this would return "Google"
    return Input.Text.Substring(0, dotLocation);
}
else
{
    // no text before the dot.
}