带有空格和前面零的正则表达式
Regex with whitespaces and preceding zeros
我想用 SAS 中的正则表达式匹配字符串 11
。
11
前面可以有零个或多个 0 and/or 空格。不允许使用任何其他字符。
同样,如果有的话,在 11
.
之后应该只有空格
示例:
Match:
0000011
11
11<space><space>
No Match:
115
400011
到目前为止,我正在使用 /^[\s|0+]11\s*$/
。它有效,但我想知道是否有更直接的方法?
您可以使用这个简化的正则表达式:
/^[\s0]*11\s*$/
您的正则表达式似乎没问题。我不习惯 SAS 的正则表达式,但看起来你只允许一个 space 并且在 11.
之前至少需要一个 0
以下内容也应该有效,在 11 之前允许有多个或没有 space 和零(零和规格可以混合),并且禁止除 space 之后的任何其他字符。
/^[\s|0]*11\s*$/
我不确定您是否真的可以在您的用例中做得更好。
我想用 SAS 中的正则表达式匹配字符串 11
。
11
前面可以有零个或多个 0 and/or 空格。不允许使用任何其他字符。
同样,如果有的话,在 11
.
示例:
Match:
0000011
11
11<space><space>
No Match:
115
400011
到目前为止,我正在使用 /^[\s|0+]11\s*$/
。它有效,但我想知道是否有更直接的方法?
您可以使用这个简化的正则表达式:
/^[\s0]*11\s*$/
您的正则表达式似乎没问题。我不习惯 SAS 的正则表达式,但看起来你只允许一个 space 并且在 11.
之前至少需要一个 0以下内容也应该有效,在 11 之前允许有多个或没有 space 和零(零和规格可以混合),并且禁止除 space 之后的任何其他字符。
/^[\s|0]*11\s*$/
我不确定您是否真的可以在您的用例中做得更好。