需要正则表达式才能从字符串中提取字母表

时间:2012-10-23 07:47:25

标签: c# regex extract

您好我有A01AAA等字符串

我想提取出它的字母表部分,就像A01 =>一样。 AAAA => AAA

我正在使用[A-Za-z\s],但它不起作用。然而,当我在线尝试时,它可以工作 http://gskinner.com/RegExr/

缺少什么?

4 个答案:

答案 0 :(得分:4)

这是一个不可知的语言正则表达式解决方案:

/[a-z]+/i

C#代码:

public Regex MyRegex = new Regex( "[a-z]+", RegexOptions.IgnoreCase);

答案 1 :(得分:2)

您可以使用LINQ,因为正则表达式涉及开销:

var res = String.Join("", input.Where(c => Char.IsLetter(c)));

答案 2 :(得分:0)

以下是一个可以正常运行的示例代码。

string txt="a123b";
        string re1="([A-Za-z])";

    MatchCollection matches = Regex.Matches(txt, re1);

    string str = String.Empty;

        // Use foreach loop.
        foreach (Match match in matches)
        {
            foreach (Capture capture in match.Captures)
                {
                    str += capture.Value ;
                }
        }
    Console.WriteLine(str);

使用System.Text.RegularExpression命名空间。

答案 3 :(得分:0)

您可以使用正则表达式替换。

using System.Text.RegularExpressions;

string aplhaNumericString = "A01", alphabeticalString ="AAA";

Regex.Replace(aplhaNumericString,@"\d","");
Regex.Replace(alphabeticalString,@"\d","");