c#如何修剪字符串并检查它以数字结尾

时间:2013-10-23 10:21:47

标签: c#

我正在尝试使用正则表达式并检查给定字符串(如果它以数字结尾

asdf4-24rwefaw-234tefg-teer6666
wert34-g54g5-345g345-25trv3457

3 个答案:

答案 0 :(得分:5)

修改

由于您从字符串的末尾删除了可选的空格,

var correct = char.IsDigit(yourString.Last());

就足够了。

-

你可以做到

var correct = char.IsDigit(yourString.TrimEnd().Last());

作为Regex的替代。


或者,

var correct = char.IsDigit(yourString.Reverse()
        .First(c => !char.IsWhiteSpace(c)));

如果你想重复这样做,Regex就是你要走的路。一旦实例化,我怀疑它会更快。

答案 1 :(得分:4)

您可以使用:

                                                  +-- a digit
                                                  |
                                                  |   +-- end of string
                                                 -+   |
Regex.Match("asdf4-24rwefaw-234tefg-teer6666", @"\d\s*$").Success
                                                   -+-
                                                    |
                                                    +-- zero or more whitespace

答案 2 :(得分:0)

var s = "asdf4-24rwefaw-234tefg-teer6666";
bool endsWithNumber = Regex.IsMatch(s, @"\d$");