Pythonのismatch


Pythonには文字列のパターンマッチングを行うための機能がいくつかあります。ismatch関数はその一つで、指定したパターンが文字列と一致するかどうかを判定するために使用されます。以下に、ismatch関数の使い方と具体的なコード例を示します。

import re
def is_match(pattern, string):
    match = re.match(pattern, string)
    if match:
        return True
    else:
        return False
# 例1: パターンが文字列に一致する場合
pattern1 = r'apple'
string1 = 'I love apples'
result1 = is_match(pattern1, string1)
print(result1)  # 出力: True
# 例2: パターンが文字列に一致しない場合
pattern2 = r'banana'
string2 = 'I love apples'
result2 = is_match(pattern2, string2)
print(result2)  # 出力: False
# 例3: 正規表現を使用したパターンマッチング
pattern3 = r'[0-9]+'
string3 = '12345'
result3 = is_match(pattern3, string3)
print(result3)  # 出力: True
# 例4: パターンにマッチする部分文字列の抽出
pattern4 = r'(\d{2})-(\d{2})-(\d{4})'
string4 = 'Date: 12-31-2022'
match4 = re.match(pattern4, string4)
if match4:
    year = match4.group(3)
    month = match4.group(1)
    day = match4.group(2)
    print(f"Year: {year}, Month: {month}, Day: {day}")
    # 出力: Year: 2022, Month: 12, Day: 31

上記のコード例では、ismatch関数を定義してパターンマッチングを行っています。re.match関数を使用して、パターンと文字列の一致を確認しています。マッチが見つかった場合はTrueを返し、見つからなかった場合はFalseを返します。

また、例4では正規表現を使用して日付のパターンにマッチする部分文字列を抽出しています。re.match関数の結果を使って、マッチした部分文字列をgroupメソッドで取得しています。

これらのコード例を参考にしながら、ismatch関数を使ってパターンマッチングを行うことができます。