Python | Extraheer woorden uit een gegeven string

| | | | | | | | | | | | | | | | | | |

Methode # 1: split() gebruiken
Met de functie splitsen kunnen we een string opsplitsen in een lijst met woorden, en dit is de meest gebruikelijke en aanbevolen methode als iemand deze specifieke taak wil voltooien. Maar het nadeel is dat het niet werkt als de tekenreeks leestekens bevat.


# Python3-democode < br> # extraheer woorden uit string
# gebruik split ()


# initialisatie string

test_string = "Geeksforgeeks is de beste Computer Science Portal"


# print de originele regel

print ( "De originele string is:" + test_string)


# gebruik split ()
# extraheer woorden uit string

r es = test_string.split ()


# print resultaat

print ( "De lijst met woorden is:" + str (res) )

Afsluiten:

De originele string is: Geeksforgeeks is de beste Computer Science Portal
De lijst met woorden is: [`Geeksforgeeks`,` is`, `best`, `Computer`, `Science`, `Portal`]

Methode #2: regex (findall ())
In gevallen die alle speciale tekens en leestekens bevatten, zoals hierboven besproken, kan de traditionele methode om woorden in een tekenreeks te zoeken met behulp van splitsen mislukken en vereist daarom reguliere expressies om deze taak te volbrengen. De functie findall retourneert een lijst na het filteren van de tekenreeks en het extraheren van woorden, waarbij leestekens worden genegeerd.


# Python3 demo code
# extraheer woorden uit string
# gebruik reguliere expressie (findall ())

import re


# initialiserende string

test_string = "Geeksforgeeks , is het beste @ # Computer Science Portal. !!!"


# print originele regel

print ( "De originele string is: " + test_string)


# met reguliere expressie (findall ())
# extraheer woorden uit string

res = re.findall (r `w +` , test_string)


# print resultaat

print ( "De lijst met woorden is:" + str (res))

Uitvoer:

De originele string is: Geeksforgeeks, is best @ # Computer Science Portal. !!!
De lijst met woorden is: [`Geeksforgeeks`, `is`, `best`, `Computer `,` Science `,` Portal `]

Methode # 3: Regex () + string.interpunctie gebruiken
Deze methode gebruikte ook reguliere expressies, maar de functie `alle interpunctietekenreeksen ophalen` wordt gebruikt om alle interpunctietekens te negeren en de gefilterde resultaatreeks te krijgen.


# Python3-democode
# extraheer woorden uit de string < br> # gebruik regex () + string.punctuation

import re

import string


# initialiserende string

test_string = " Geeksforgeeks, is de beste @ # Computer Science Portal. !!! "


# print originele string

print ( " De originele string is: " + test_string)


# gebruik regex () + string.punctuation
# extraheer woorden uit string

res = re.sub ( `[` + string.punctuation + `] ` ,` `, test_string ) .split ()


# afdrukresultaat

print ( "De lijst met woorden is:" + str ( res))

Afsluiten:

De originele string is: Geeksforgeeks, is best @ # Computer Science Portal. !!!
De lijst met woorden is: [`Geeksforgeeks`, `is`, `best`, `Computer`, `Science`, `Portal`]