在字符串后提取文本

ima*_*tha 0 python python-3.x python-re

我想从以下文本中提取“name=”之后的字符串。我已经编写了以下正则表达式,但它并没有真正起作用。所需的输出是[Taal, Muntinlupa city]

    text = [ "id='00e5885868b4d7ed', url='https://api.twitter.com/1.1/geo/id/00e5885868b4d7ed.json', place_type='city', name='Taal', full_name='Taal, Calabarzon', country_code='PH', country='Republic of the Philippines'",
     "id='00c699d656122ebe', url='https://api.twitter.com/1.1/geo/id/00c699d656122ebe.json', place_type='city', name='Muntinlupa City', full_name='Muntinlupa City, National Capital Region', country_code='PH', country='Republic of the Philippines']

    matched_vals = [re.findall(r'(?<=name\=).*(?=\s)',tweet) for tweet in text]
Run Code Online (Sandbox Code Playgroud)

Rak*_*esh 5

使用模式 r"name='(.+?)'"

前任:

import re

text = [ "id='00e5885868b4d7ed', url='https://api.twitter.com/1.1/geo/id/00e5885868b4d7ed.json', place_type='city', name='Taal', full_name='Taal, Calabarzon', country_code='PH', country='Republic of the Philippines'",
 "id='00c699d656122ebe', url='https://api.twitter.com/1.1/geo/id/00c699d656122ebe.json', place_type='city', name='Muntinlupa City', full_name='Muntinlupa City, National Capital Region', country_code='PH', country='Republic of the Philippines'"
]

for i in text:
    print(re.search(r"name='(.+?)'", i).group(1))
Run Code Online (Sandbox Code Playgroud)

输出:

Taal
Muntinlupa City
Run Code Online (Sandbox Code Playgroud)