我有一个包含一些字符串项目的列表
res = ["FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'KIDS' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'FANTASY' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME =='Mumbai' & EVENT_GENRE == 'FESTIVAL' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'WORKSHOP' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'EXHIBITION' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|DRAMA|'",
"FAV_VENUE_CITY_NAME = 'Mumbai' & & FAV_GENRE == '|ACTION|ADVENTURE|SCI-FI|'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|COMEDY|'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_LANGUAGE == 'Hindi'"]
我想迭代所有列表项并且
1.删除以 count_ 开头的单词短语(位于两个 & 字符之间)
输出应该是这样的
res = ["FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'KIDS'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'FANTASY'",
"FAV_VENUE_CITY_NAME =='Mumbai' & EVENT_GENRE == 'FESTIVAL'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'WORKSHOP'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'EXHIBITION'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|DRAMA|'",
"FAV_VENUE_CITY_NAME = 'Mumbai' & & FAV_GENRE == '|ACTION|ADVENTURE|SCI-FI|'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|COMEDY|'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_LANGUAGE == 'Hindi'"]
我尝试过类似的事情
for x in res:
regex = re.compile('count_') #setting a search cateory
matches = [string for string in res if re.match(regex, string)] # finding all matches
resfinal = [x for x in res if x not in matches]
但没有成功。我知道我缺少一些注册操作技巧,但没有得到它。请建议一些代码行。
最佳答案
您不需要正则表达式。
>>> res = ["FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'KIDS' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'FANTASY' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME =='Mumbai' & EVENT_GENRE == 'FESTIVAL' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'WORKSHOP' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'EXHIBITION' & count_EVENT_GENRE >= 1",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|DRAMA|'",
"FAV_VENUE_CITY_NAME = 'Mumbai' & & FAV_GENRE == '|ACTION|ADVENTURE|SCI-FI|'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|COMEDY|'",
"FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_LANGUAGE == 'Hindi'"]
>>> [' & '.join(x for x in i.split(' & ') if not x.startswith('count_')) for i in res]
["FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'KIDS'", "FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'FANTASY'", "FAV_VENUE_CITY_NAME =='Mumbai' & EVENT_GENRE == 'FESTIVAL'", "FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'WORKSHOP'", "FAV_VENUE_CITY_NAME == 'Mumbai' & EVENT_GENRE == 'EXHIBITION'", "FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|DRAMA|'", "FAV_VENUE_CITY_NAME = 'Mumbai' & & FAV_GENRE == '|ACTION|ADVENTURE|SCI-FI|'", "FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_GENRE == '|COMEDY|'", "FAV_VENUE_CITY_NAME == 'Mumbai' & FAV_LANGUAGE == 'Hindi'"]
关于python - 在Python中用特定单词分割列表中的一些字符串项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34116907/