在python中使用正则表达式根据某种模式删除某些行
我有一个包含一些文本列的数据表。我想删除那些有MN后跟一些数字的行。例如MN 894080/901060/905034、MN 90706等在python中使用正则表达式根据某种模式删除某些行,python,regex,Python,Regex,我有一个包含一些文本列的数据表。我想删除那些有MN后跟一些数字的行。例如MN 894080/901060/905034、MN 90706等 import pandas as pd data= [ "MN 894080/901060/905034 - a file has some text.", "L2 BLOCK AMER] [VVol MN 941737][DU MN 934010] a file has some text", "MN 907068 || bdheks;", "MN#287
import pandas as pd
data= [
"MN 894080/901060/905034 - a file has some text.",
"L2 BLOCK AMER] [VVol MN 941737][DU MN 934010] a file has some text",
"MN 907068 || bdheks;",
"MN#287627/901060/905034 a file has some text ",
"MN# 944179 || a file has some text",
"(MN #927427)a file has some text",
"MN 933281 - a file has some text",
"a file has some text",
" a file has some text Mnuq"]
df<-pd.DataFrame(data)
df.loc[~df[0].str.contains(r'MN.*\d+')]
df
data
a file has some text
a file has some text Mnuq
import pandas as pd
data= [
"MN 894080/901060/905034 - a file has some text.",
"L2 BLOCK AMER] [VVol MN 941737][DU MN 934010] a file has some text",
"MN 907068 || bdheks;",
"MN#287627/901060/905034 a file has some text ",
"MN# 944179 || a file has some text",
"(MN #927427)a file has some text",
"MN 933281 - a file has some text",
"a file has some text",
" a file has some text Mnuq"]
_re_remove = re.compile('MN.*\d+')
df = pd.DataFrame(row for row in data if not _re_remove.search(row))