有没有办法使用ONLY正则表达式实现算法?

时间:2017-11-11 19:14:58

标签: python regex

我只有+-的字符串,加上一些变量,减去它分别减去它。在处理输入字符串的任何符号时,我应检查变量是否小于0或大于N.

例如我输入了:

N = 10
string = "+++++++++---+-+-+"

输出:

True

输入:

N = 3
string = "+-+-+-++-+++--"

输出:

False

Python解决方案是:

def check(string, N):
    accumulator = 0
    for ch in string:
        if ch == '+':
            accumulator += 1
        elif ch == '-':
            accumulator -= 1
        if accumulator < 0 or accumulator > N:
            return False
     return True

但是我需要使用正常的表达式来实现它,比如:

def check(string, N):
    regex = r'^$'  # <-- regex is here
    return bool(re.match(regex, string))

有什么想法吗?

0 个答案:

没有答案