验证字符串有没有空间字符,只有第一和最后一个字符作为分隔符

问题描述:

我需要字符串验证,以符合未来:验证字符串有没有空间字符,只有第一和最后一个字符作为分隔符

  • 没有空格字符
  • 开始与一个分隔符字符
  • 结尾一个分隔符字符
  • 没有其他字符作为分隔符字符

这可怎么办呢?

更新遗憾错过了应该只是在开始和结束时

+2

做正则表达式一个检索算法 – 2012-03-30 08:17:20

+1

需要一门功课标签 – Bond 2012-03-30 08:17:29

+1

+1的正则表达式。现在就了解它,这是'必备'技能 – 2012-03-30 08:46:13

一个分隔符字符如果我明白你的问题的权利,这应该这样做:

char delimiter = ... 
string delimiterString = delimiter.ToString(); 
string s = ... 
bool right = !s.Contains(' ') 
    && s.StartsWith(delimiterString) 
    && s.EndsWith(delimiterString) 
    && !s.Substring(1,s.Length-2).Contains(delimiter); 
+0

我希望他感谢你为他做功课。 – Richard 2012-03-30 08:23:00

+0

看起来不错,顺便修剪将做多个并添加检查为空以及 – walter 2012-03-30 08:29:30

+0

现在它应该正常工作,空检查留给读者的练习。 – 2012-03-30 08:37:28

使用正则表达式...假设#作为分隔符和零之间的角色可接受。

Regex rx=new Regex("^#+[^\s]*#$"); 

return rx.IsMatch(teststring); 
+0

正则表达式应该更新,它不涵盖所有情况 – walter 2012-04-06 07:49:44