找到第二个字符的正则表达式是Alpha跟随1个数字

时间:2008-12-10 01:40:22

标签: regex

查找第二个字符的正则表达式是高达5 Alpha的Alpha,后跟1个数字。

由于

4 个答案:

答案 0 :(得分:1)

我没有成功实施上述任何解决方案,可能是我对需求的不良解释。我确实在不使用Regex的代码中解决了它。感谢所有花时间提供帮助的人。对于那些认为这是作业的人来说,事实并非如此。

以下是一些示例数据。

需要这个

I INDY2'INDY VECTOR DP FOR FILING'041802 REM 59268640 我JODUB3'AIRE FOR JODUB SID'051205 CLW 59268649

不需要这个

I J149'GDK 59265224 I APE074'43092 REF 59265777

这是我在代码中测试的方式。

Dim IsSidStar As Boolean = False
        If aAirways.Name.Length > 2 Then
            Dim a2ndChar As Char = aAirways.Name(1)
            Dim alastChar As Char = aAirways.Name(aAirways.Name.ToString.Length - 1)
            Dim a2ndlastChar As Char = aAirways.Name(aAirways.Name.ToString.Length - 2)

            If Char.IsLetter(a2ndChar) = True AndAlso Char.IsNumber(alastChar) = True AndAlso Char.IsNumber(a2ndlastChar) = False Then
                IsSidStar = True
            End If
        End If

答案 1 :(得分:0)

.\w{1,5}\d

任何字符后跟1到5个字母,然后是1个数字

答案 2 :(得分:0)

仔细检查...

  • 第二个字符是alpha
  • 高达5以下的alpha(即总共1 - 6 alpha)
  • 最终数字

假设第一个角色无关紧要:

/.[A-Za-z]{1,6}\d/

答案 3 :(得分:-1)

这应该可以解决问题。正则表达式语言是.Net实现

^ [A-ZA-Z] {1,5} \ d $

击穿

  • ^强制匹配从文本开头
  • 开始
  • 。会匹配任何东西
  • [a-zA-Z] {1,5}将匹配任何字符a-z至少一次但不超过五次。由于前面的“。”这意味着匹配将从第二个角色开始
  • \ d匹配一位数字
  • $匹配文本的结尾