Как найти следующий номер для совпадения числа из строки чисел, разделенных запятыми, используя регулярное выражение в Python? - PullRequest
0 голосов
/ 24 июня 2019

Предположим, у меня есть строка чисел, разделенных запятыми, и я хочу узнать следующее число совпадающих чисел, поэтому я использую эту логику, используя строку покрытия в list.

import json

s = '1,5,8,11,22,25'

def get_next(number):
    clean_s = f'[{s}]'
    number_list = json.loads(clean_s)
    input_number_index = number_list.index(number)
    return number_list[input_number_index + 1] # return next number

print(get_next(5)) # will print 8
print(get_next(11)) # will print 22
print(get_next(22)) # will print 25
print(get_next(1)) # will print 5

Как я решу эту проблему, используя регулярное выражение python ?

1 Ответ

1 голос
/ 24 июня 2019

Это должно помочь.

Ex:

import re

def get_next(number):
    m = re.search(r"(?<={},)(\d+),?".format(number), '1,5,8,11,22,25')
    if m:
        return m.group(1)
    return "N\A"

print(get_next(5)) # will print 8
print(get_next(11)) # will print 22
print(get_next(22)) # will print 25
print(get_next(1)) # will print 5
print(get_next(25)) # will print N\A
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...