【问题标题】:Python regex to get longest text inside single quotes [closed]Python正则表达式在单引号内获取最长的文本[关闭]
【发布时间】:2020-02-11 11:10:21
【问题描述】:

我有一个带有以下文本/字符串的变量:

INSERT INTO "some_table" (id,field) VALUES ('1','01060000CDA209WE140000010000');

我想检索单引号内的值,即01060000CDA209WE140000010000

在我看来,我必须提取单引号之间的所有字符串,然后选择最长的一个。

【问题讨论】:

  • 你说得对,这是最好的方法。那么您的问题是什么?
  • 你试过什么?什么没用?你得到了什么?你期待什么?什么不适用于您的代码,它在哪里?
  • 是按长度还是按列提取?
  • 你也可以提取,' and '之间的文本
  • 如果s 包含文本字符串,您可以使用max(re.findall(r"'(.*?)'", s), key=len)

标签: python regex django


【解决方案1】:

我不知道是否有特定的正则表达式实用程序来完成您的要求,这是我的解决方案:

text = "INSERT INTO \"some_table\" (id,field) VALUES ('1','01060000CDA209WE140000010000');"
a = re.findall("\(\'(.*?)\'\)", text)[0].split(",")
max(a, key=len)

我的代码上的一些话:

我假设你想获得这些模式中最大的字符串:(' ') 所以第一个正则表达式匹配 (' ') 内的所有内容,然后正则表达式返回["1','01060000CDA209WE140000010000"]thats,因为我们没有做任何事情来消除正则表达式中的逗号,之后您可以获取正则表达式结果中的第一个元素并获得最大长度的str。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-18
    • 1970-01-01
    • 2022-11-12
    相关资源
    最近更新 更多