正则表达式以任意顺序匹配1个字符和单个或双个数字

时间:2013-12-07 08:28:57

标签: c# regex

我应该预先说明我对正则表达式的理解是非常有限的,我可以做一些非常基本的东西,但真的很难写出我自己的匹配特定模式。

我需要从字符串中获取一些坐标的部分。坐标可以是任何顺序。因此,例如我的列从1到15开始,而A-O和I的行要分别检索2个部分,但它们可以按任何顺序出现在字符串中。

我的正则表达式如下:

([A-Z]{1})([1-9]{1}[0-5]?)

这匹配H12但不匹配12H。它也应该只允许1-15的数字,但目前允许的数字大于该数字。

如果它有所作为 - 我将在c#.Net中使用它。

1 个答案:

答案 0 :(得分:2)

  

my columns go from 1-15 and the rows from A-O and I want to retrieve the 2 parts separately but they could appear in the string in any order.

您可以使用此正则表达式:

^(?:([A-O])([1-9]|1[0-5])|([1-9]|1[0-5])([A-O]))$