0
import re

cards1 = "'F'*4 + 'H'*10"; cards2 = 'FFHH'
def find_number_of_cards(cards):
    regexp = re.compile(r"(?P<FandH>[FH]+) | (('F')[*](?P<F>[0-9]+)\s*[+]\s*('H')[*](?P<H>[0-9]+))")
    result = regexp.search(cards)
    if result == None:
        return ("The expression given is not valid.")
    else:
        FnH = result.group('FandH')
        F = result.group('F')
        H = result.group('H')
        if FnH == None:
            return F, H
        else:
            return "Blank."

print(find_number_of_cards(cards1))
print(find_number_of_cards(cards2))
4

1 に答える 1

3

これを変える:

regexp = re.compile(r"(?P<FandH>[FH]+) | (('F')[*](?P<F>[0-9]+)\s*[+]\s*('H')[*](?P<H>[0-9]+))")

これに:

regexp = re.compile(r"(?P<FandH>[FH]+)|(('F')[*](?P<F>[0-9]+)\s*[+]\s*('H')[*](?P<H>[0-9]+))")

文字列内にスペースがないスペースを探しています。

于 2012-05-18T00:52:11.587 に答える