正则表达式匹配字符串仅包含特定字母
我试过几个正则表达式组合弄清楚这一点,但有些还是条件失败,正则表达式匹配字符串仅包含特定字母
我有一个输入字符串,只能包含给定定义字符集
可以让它说A,B或C.
我该如何配合?
ABBBCCC - isMatch真
AAASDFDCCC - isMatch假
PS。我正在使用C#
^[ABC]+$
应该足够了:即使用Character class or Character Set。
Anchors'^'和'$'只是为了确保所有字符串只包含从开始到结束的字符。
Regex.Match("ABACBA", "^[ABC]+$"); // => matches
含义:一个字符集不能保证他匹配的字符顺序。
Regex.Match("ABACBA", "^A+B+C+$"); // => false
将保证顺序
谢谢VonC,Works Perfect,我在用[ABC] +,我认为这很好,但是Anchor和$都是必需的......干杯! – 81967 2009-09-21 06:44:55
感谢您的订购技巧,这将帮助我。 – JasonBartholme 2009-09-21 16:32:42
我认为你正在寻找这样的:
Match m = Regex.Match("abracadabra", "^[ABC]*$");
if (m.Success) {
// Macth
}
“^ [ABC] * $”也会匹配一个空字符串。要强制至少有一个字符存在,请将其更改为“^ [ABC] + $” – 2009-09-21 07:00:49
未知:将ABBBBAC比赛? – 2009-09-21 06:39:23
是的......它会匹配....具有A和/或B和/或C的任何字符串将匹配 – 81967 2009-09-21 06:41:46
大小写敏感性如何? aBBBbBc会匹配吗? – 2009-09-21 06:44:16