具有空格和前零的正则表达式

时间:2015-06-22 11:20:02

标签: regex sas

我希望将字符串11与SAS中的正则表达式匹配。 11前面可以有零个或多个0和/或前面的空格。不允许任何其他角色。 同样,如果有任何内容,11之后只有空格。

示例:

Match:
0000011  
11
11<space><space>

No Match:
115
400011

到目前为止,我正在使用/^[\s|0+]11\s*$/。它有效,但我想知道是否有一种方法更直接?

2 个答案:

答案 0 :(得分:1)

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

/^[\s0]*11\s*$/

答案 1 :(得分:0)

你的正则表达式看起来很好。我不习惯SAS的正则表达式,但看起来你只允许一个空格,并且要求在11之前至少有一个0。

以下应该也可以工作,在11之前允许很多或没有空格和零(零和可以混合),并且禁止之后的任何其他字符而不是空格。

/^[\s|0]*11\s*$/

我不确定你的用例能否做得更好。