正则表达式,匹配仅包含特定字母的字符串

时间:2009-09-21 06:34:39

标签: c# regex

我已经尝试了几种正则表达式组合来解决这个问题,但有些或条件失败了,

我有一个输入字符串,只能包含一组给定的定义字符

让我们说A,B或C.

我该如何匹配这样的东西?

ABBBCCC - isMatch True

AAASDFDCCC - isMatch false

PS。我正在使用C#

2 个答案:

答案 0 :(得分:18)

 ^[ABC]+$

应该足够了:那是使用Character class or Character Set

Anchors'^'和'$'只会确保所有字符串只包含从头到尾的字符。

Regex.Match("ABACBA", "^[ABC]+$"); // => matches

含义:字符集不保证匹配字符的顺序。

Regex.Match("ABACBA", "^A+B+C+$"); // => false

保证订单

答案 1 :(得分:1)

我认为你正在寻找这个:


Match m = Regex.Match("abracadabra", "^[ABC]*$");
if (m.Success) {
   // Macth
}