Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Find numbers using Regex
#18
(Jul-25-2022, 07:32 PM)snippsat Wrote:
(Jul-25-2022, 05:15 AM)giddyhead Wrote: Instead of finding the whole thing can it be modified to only find the numbers only for example 5one, 5529care, 30over, etc? Thanks
If add a group () to deanhystad code then will get only numbers.
from io import StringIO
import re

test_text = StringIO(
"""25 - not this number1
the cow just over the moon and the sun is in 1the sky
26 - not this number
5one day is soon and soon is near take 5529care, 30over and out
59 - not this number
The covers at near the back of the 59closet, and when found have them place on the each of the beds. However you see the pillow cases use the ones on the 9second shelve."""
)

pattern = re.compile(r"([0-9]+)[a-zA-Z]+|[a-zA-Z]+([0-9]+)")
for line in test_text:
    matches = re.findall(pattern, line)
    if matches:
        print(f"{line}Matches = {matches}\n")
    else:
        print(f"{line}No matches\n") 
Output:
25 - not this number1 Matches = [('', '1')] the cow just over the moon and the sun is in 1the sky Matches = [('1', '')] 26 - not this number No matches 5one day is soon and soon is near take 5529care, 30over and out Matches = [('5', ''), ('5529', ''), ('30', '')] 59 - not this number No matches The covers at near the back of the 59closet, and when found have them place on the each of the beds. However you see the pillow cases use the ones on the 9second shelve.Matches = [('59', ''), ('9', '')]
Clean up.
>>> Matches = [('5', ''), ('5529', ''), ('30', '')]
>>> [i[0] for i in Matches]
['5', '5529', '30']

Got it Thank you!
Reply


Messages In This Thread
Find numbers using Regex - by giddyhead - Jul-24-2022, 04:41 AM
RE: Find numbers using Regex - by rob101 - Jul-24-2022, 06:26 AM
RE: Find numbers using Regex - by giddyhead - Jul-24-2022, 12:11 PM
RE: Find numbers using Regex - by rob101 - Jul-24-2022, 02:52 PM
RE: Find numbers using Regex - by giddyhead - Jul-24-2022, 06:22 PM
RE: Find numbers using Regex - by Pedroski55 - Jul-24-2022, 07:29 AM
RE: Find numbers using Regex - by rob101 - Jul-24-2022, 06:36 PM
RE: Find numbers using Regex - by giddyhead - Jul-24-2022, 08:32 PM
RE: Find numbers using Regex - by rob101 - Jul-24-2022, 11:03 PM
RE: Find numbers using Regex - by giddyhead - Jul-25-2022, 05:27 AM
RE: Find numbers using Regex - by Pedroski55 - Jul-25-2022, 12:26 AM
RE: Find numbers using Regex - by giddyhead - Jul-25-2022, 05:22 AM
RE: Find numbers using Regex - by deanhystad - Jul-25-2022, 04:26 AM
RE: Find numbers using Regex - by giddyhead - Jul-25-2022, 05:15 AM
RE: Find numbers using Regex - by rob101 - Jul-25-2022, 06:07 AM
RE: Find numbers using Regex - by deanhystad - Jul-25-2022, 06:28 AM
RE: Find numbers using Regex - by snippsat - Jul-25-2022, 07:32 PM
RE: Find numbers using Regex - by giddyhead - Jul-26-2022, 12:54 AM
RE: Find numbers using Regex - by giddyhead - Jul-28-2022, 12:29 AM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Regex to find triple characters bfallert 14 558 May-16-2024, 04:02 PM
Last Post: xMaxrayx
  find random numbers that are = to the first 2 number of a list. Frankduc 23 3,524 Apr-05-2023, 07:36 PM
Last Post: Frankduc
  Find and Replace numbers in String giddyhead 2 1,320 Jul-17-2022, 06:22 PM
Last Post: giddyhead
  find 2 largest equal numbers Frankduc 13 3,761 Jan-11-2022, 07:10 PM
Last Post: Frankduc
  Find and replace in files with regex and Python Melcu54 0 1,900 Jun-03-2021, 09:33 AM
Last Post: Melcu54
  Find and replace to capitalize with Regex hermobot 2 2,584 Mar-21-2020, 12:30 PM
Last Post: hermobot
  Python regex to get only numbers tantony 6 4,243 Oct-09-2019, 11:53 PM
Last Post: newbieAuggie2019
  Print Numbers starting at 1 vertically with separator for output numbers Pleiades 3 3,846 May-09-2019, 12:19 PM
Last Post: Pleiades
  How to find the sum of even numbers from entered N numbers? Rajath 2 12,474 Sep-13-2017, 07:19 PM
Last Post: nilamo

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020