Sobes.tech
Middle

Kā atrast lielāko veselā skaitļa vērtību virknes iekšpusē, neizmantojot regulārās izteiksmes Python valodā?

sobes.tech AI

Atbilde no AI

Lai atrastu lielāko veselā skaitli virknes iekšienē bez regulāro izteiksmju izmantošanas, vari pārlūkot virknes rakstzīmes, identificēt ciparu secības, tās pārvērst skaitļos un sekot līdzi lielākajam.

Piemērs Python valodā:

def max_integer_in_string(s):
    max_num = None
    current_num = ''
    for ch in s:
        if ch.isdigit():
            current_num += ch
        else:
            if current_num:
                num = int(current_num)
                if max_num is None or num > max_num:
                    max_num = num
                current_num = ''
    # Pārbaude pēc cikla, ja virkne beidzas ar skaitli
    if current_num:
        num = int(current_num)
        if max_num is None or num > max_num:
            max_num = num
    return max_num

# Piemērs lietošanai
s = "abc123def45gh6789"
print(max_integer_in_string(s))  # Izvadīs 6789