正则表达式恰好是中间的一个空格

时间:2014-06-23 14:38:11

标签: c# .net regex

我正在寻找一个正则表达式,它将匹配字符串中间恰好包含一个空格的字符串(即不在开头和结尾)。它应该允许在空间之前和之后的所有字符,而不仅仅是字母数字。

它应匹配:

  • “a b”
  • “abc 124.34”
  • “hello @ world”

(如果这更容易,如果它匹配包含一个或多个空格的字符串就没问题。例如“a b c”)

我尝试了以下内容,但这种情况不符合所有情况:

^[^\s]+(\s+[^\s]+)*$

3 个答案:

答案 0 :(得分:2)

尝试使用以下正则表达式匹配仅包含一个空格的字符串(行),

^[^\s]+\s[^\s]+$

DEMO

答案 1 :(得分:0)

你可以尝试这个

[^\s]+(\s.+)\b

http://www.regexr.com/391po

答案 2 :(得分:0)

我认为这会对你有所帮助:

Regex reg = new Regex(@"^.{1,} .{1,}$");
bool result = reg.IsMatch(YourStringVariable);