这是我的脚本:
import re
corpus = "Me[Unknown] temo[Unknown] que[Unknown] buscare[Unknown] otras[Unknown] opciones[Unknown] esta[Unknown] nunca[ADV+NEG+H_CIRCONSTANT_TEMPS+C_TPS_FREQUENCE+SC_FREQUENCE_FORTE]
más[ADV+comp+PADV+H_CIRCONSTANT_QUANTITE+C_QNT_FORTE] compraré[V+H_PREDICAT_ACTION+C_PREDICAT_TRANSACTION+SC_TRANSACTION_ACHAT] buscare[INCONNU] otras[INCONNU] opciones[INCONNU] por[INCONNU] la[INCONNU] calidad[INCONNU] de[INCONNU] la[INCONNU] luz[INCONNU]"
regex = re.findall(r"(\w+)\[ADV\+NEG\+H_CIRCONSTANT_TEMPS.*?\]/(\w+)\[ADV\+comp\+PADV\+H_CIRCONSTANT_QUANTITE.*?\]/(\w+)\[V+H_PREDICAT_ACTION+C_PREDICAT_TRANSACTION.*?\]", texte)
print(regex)
我需要这些输出:
nunca más compraré
以及
nunca[ADV+NEG+H_CIRCONSTANT_TEMPS+C_TPS_FREQUENCE+SC_FREQUENCE_FORTE] más[ADV+comp+PADV+H_CIRCONSTANT_QUANTITE+C_QNT_FORTE] compraré[V+H_PREDICAT_ACTION+C_PREDICAT_TRANSACTION+SC_TRANSACTION_ACHAT]
输出:
[]
我刚刚纠正了正则表达式中的几个错误:
(\w+)
来匹配nunca
之前的字符,但是\w不匹配[
或]
,所以我使用了([A-Za-z\[\] ]+)\]
,它匹配字母表、大括号和空格/(\w+)
其中\w+
来匹配你的单词,但是/
之前的(\w+)
是不必要的,它不会找到你想要的结果[V+H_PREDICAT_ACTION+C_PREDICAT_TRANSACTION.*?\]
,所以我使用\+
而不是+
来转义字符+
。你知道吗因此,应用修复程序将得到以下结果:
使用
re.findall
和str.join
的组合细节
[^\s\]]+
-匹配任何不是空格字符或右大括号的内容(?=\[)
-开始时的展望[
相关问题 更多 >
编程相关推荐