试图限制后续相同的字符出现

时间:2015-04-05 09:24:20

标签: c# regex

我正在尝试在命令提示符中实现更改目录(cd)的类似功能。

The restriction is that, 
1 . directory names must only contain alphabets.
2 . root directory is "/"
3 . parent directory is ".."
4 . path separator is "/"

输入将是新路径名。

Input might be like . 
1. directory name alone. - valid
2. directory/directory/directory - valid
3. directory//directory - invalid
4. .. - valid
5. directory/.. - valid
6. directory/... - invalid

和其他类似的组合。

为了避免复杂性,我试图拆分支票

  1. 要检查输入必须只包含字母,我使用^ [A-Za-z] + $ this。
  2. 但不知道如何将后续出现的/和点(。)字符分别限制为1和2
  3. 由于

1 个答案:

答案 0 :(得分:0)

您只需使用String.IndexOf并检查其返回值。

var is_only_one_slash = input.IndexOf("\\\\") == -1;
var is_only_two_dots = input.IndexOf("..") > -1;
if(is_only_one_slash && is_only_two_dots) {
  // valid
}