I have a column in a dataframe which have a pattern as shown in the below example
I am trying to extract the value for name and store it in the same dataframe with column name as "name" and value is "x"
I tried the below code but it doesn’t seem to work correctly
df['name'] = df['col'].str.extract("'name': '(.*?)'")
'name': '(.*?)' regex is meant to extract a string between
'name': ' and the next
' char. You do not have single quotes, nor
: in your input.
You can use
df['name'] = df['col'].str.extract(r"name=([^;]*)")
See the regex demo,
name=([^;]*) matches the
name= as left-hand side context and extracts one or more chars other than a
; right after that into the
Answered By – Wiktor Stribiżew
Answer Checked By – Cary Denson (BugsFixing Admin)