# Python | Extract digits from given string

• Difficulty Level : Medium
• Last Updated : 16 Aug, 2022

While programming, sometimes, we just require a certain type of data and need to discard other. This type of problem is quite common in Data Science domain, and since Data Science uses Python worldwide, its important to know how to extract specific elements. This article discusses certain ways in which only digit can be extracted. Let’s discuss the same.

Method #1 : Using join() + isdigit() + filter()

This task can be performed using the combination of above functions. The filter function filters the digits detected by the isdigit function and join function performs the task of reconstruction of join function.

## Python3

 `# Python3 code to demonstrate``# Extract digit string``# using join() + isdigit() + filter()` `# initializing string``test_string ``=` `'g1eeks4geeks5'` `# printing original strings ``print``("The original string : " ``+` `test_string)` `# using join() + isdigit() + filter()``# Extract digit string``res ``=` `''.join(``filter``(``lambda` `i: i.isdigit(), test_string))``    ` `# print result``print``("The digits string ``is` `: " ``+` `str``(res))`

Output :

```The original string : g1eeks4geeks5
The digits string is : 145```

Method #2 : Using re

The regular expressions can also be used to perform this particular task. We can define the digit type requirement, using “\D”, and only digits are extracted from the string.

## Python3

 `# Python3 code to demonstrate``# Extract digit string``# using re``import` `re` `# initializing string``test_string ``=` `'g1eeks4geeks5'` `# printing original strings ``print``("The original string : " ``+` `test_string)` `# using re``# Extract digit string``res ``=` `re.sub("\D", "", test_string)``    ` `# print result``print``("The digits string ``is` `: " ``+` `str``(res))`

Output :

```The original string : g1eeks4geeks5
The digits string is : 145```

Method 3: Using loops:

This task is done by using for loop.

## Python3

 `# Python3 code to demonstrate``# Extract digit string``s``=``"g1eeks4geeks5"``#using for loop``for` `i ``in` `s:``  ``# using isdigit() function``  ``if``(i.isdigit()):``    ``print``(i,end``=``"")`

```Output:
The original string : g1eeks4geeks5
The digits string is : 145```

Method 4: Using recursion:

## Python3

 `# Python3 code to``# Extract digits from string``#using recursion` `#the function returns digits from string``def` `ExtractDigits(s,i``=``0``):``    ``#base case``    ``if` `i``=``=``len``(s):``        ``return``    ``#check if s[i] is digit or not``    ``if` `s[i].isdigit():``        ``# if it is digit``        ``#then print s[i]``        ``print``(s[i], end``=``'')``    ``i``+``=``1``#Increment i``    ``#calling function recursively``    ``ExtractDigits(s,i)``#driver code``s``=``"g1eeks4geeks5"``#function call``ExtractDigits(s)``#this code is contributed by Shivesh Kumar Dwivedi`

Output

`145`

Method 5: Using ord() method

## Python3

 `# Python3 code to demonstrate``# Extract digit string``s``=``"g1eeks4geeks5"``#using for loop``for` `i ``in` `s:``    ``if` `ord``(i) ``in` `range``(``48``,``58``):``        ``print``(i,end``=``"")`

Output

`145`

My Personal Notes arrow_drop_up