如何在Python中使用正则表达式提取两件事?

如何在Python中使用正则表达式提取两件事?,python,regex,Python,Regex,我有一个字符串,它有两个东西,一个是请愿人的名字,另一个是辩护人的名字 我想把请愿人的名字和辩护人的名字分开 所有请愿人的名字都以数字1开头,辩护人的名字以辩护人开头 1 RAM PRASAD\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0倡导者-ADITYA PRASAD 米什拉,A.P.米什拉 这是另一个字符串 1 KALAICHELVI 倡导者-仅通知订单R1,-------------,R1-塔帕尔退回,未知 2卡利穆图3拉马钱德拉·戈纳尔4塞图·阿迈勒5索姆 G

我有一个字符串,它有两个东西,一个是请愿人的名字,另一个是辩护人的名字

我想把请愿人的名字和辩护人的名字分开

所有请愿人的名字都以数字1开头,辩护人的名字以辩护人开头

1 RAM PRASAD\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0倡导者-ADITYA PRASAD 米什拉,A.P.米什拉

这是另一个字符串

1 KALAICHELVI

倡导者-仅通知订单R1,-------------,R1-塔帕尔退回,未知

2卡利穆图3拉马钱德拉·戈纳尔4塞图·阿迈勒5索姆 GOUNDER 6 SOMASUNDAR A GOUNDER 7 Karunaniti 8 拉莱塔玛尔9号杰甘纳塔·贡德


我尝试过这样做,re.splitr'[]\xa0\xa0?=[0-9]+\b',但在不存在Adovate名称时效果很好。如何做到这一点?

如果您想找到两个不同的东西并计划使用正则表达式,那么最好使用两个不同的表达式,而不是一个。比如说

请愿者\u re=re.compiler\d+\[A-Z]+匹配请愿者 倡导者\u re=re.compilerAdvocate-[^\n]+匹配倡导者 根据您的示例输入,您可以对请愿者应用re.finditer,对倡导者应用re.search

内容= 1 KALAICHELVI 倡导者-仅通知订单R1,-------------,R1-塔帕尔退回,未知 2卡利穆图3拉玛钱德拉·戈乌纳4塞图·阿迈勒5索马苏达6索马苏达7卡鲁那提8拉莱塔迈勒9杰甘纳塔·古德 请愿人=[p.group1.strip代表请愿人内容中的p] 倡导者=倡导者搜索内容 它给出了以下结果

印刷申请者 ['KALAICHELVI','KALIMUTHU','RAMACHANDRA GOAUNER','SETHU AMMAL',', “SOMU GOUNDER”、“SOMASUNDAR A GOUNDER”、“Karunaniti”、“LALAITHAMMAL”, “JEGANNATHA GOUNDER”] 印刷倡导者 '仅通知订单R1,-------------,R1-塔帕尔退回,未知'
如果每个条目都有多个提倡者,并且希望找到所有提倡者,则还需要使用re.finditer获取这些提倡者。

这些提倡者是否在一个文件中?他们是否重复?在我的DB中,是的,律师姓名可能出现在请愿人姓名下方@伯汉哈利德