所以我试图从一个文件中抓取文本,当它出现在双引号中时,除非引号中的文本以某个后缀结尾。你知道吗
例如下面,我希望对引用中所有不以VER结尾的内容进行解析。你知道吗
输入示例:
"GameVER": ["GM435615-IQR", "LG-QR435", "HG145-IR9", "WUT828-PQR10"] "VERIZON": ["GKSL42375834-45", "DG-67498", "GF4564", "HFJ-88.8.98"]
输出:
GM435615-IQR
LG-QR435
HG145-IR9WUT828-PQR10
VERIZON
GKSL42375834-45
DG-67498
GF4564
HFJ-88.8.98
在python中,我尝试了以下方法:
re.findall(r'(\"\b.+?)(?!VER)\b\"',text)
但它还是抓住了结尾有VER的词。你知道吗
任何帮助都会得到安抚。你知道吗
第一步。添加逗号。你知道吗
第二步。创建字典。你知道吗
???你知道吗
利润。你知道吗
这是因为
VER
在.+?
中被捕获(?
使.+
不贪婪,但在这种情况下,....VER
被捕获的唯一方法是让它在.+?
中)。与其说“match stuff not following by'VER'”,不如说“match a word where the last 3 characters not VER”(匹配最后3个字符不是VER的单词)(即结尾引号not前面有'VER')。你知道吗另外,不要使用
.+
,而应该尝试[^"]
,这样可以避免多个单词之间的.+
匹配。你知道吗示例:
(顺便说一下,在上面的输出中,您遗漏了“HG145-IR9”和“WUT828-PQR10”,尽管它们不是以VER结尾,而是双引号?)你知道吗
相关问题 更多 >
编程相关推荐