反转sprintf /格式的方法
我必须通过分析格式化结果来启发式地确定格式模式字符串。
例如,我有这些字符串:
你有3条未读消息。
您有10条未读消息。
对不起,戴夫。我恐怕不能那样做。
对不起,弗兰克。我恐怕不能那样做。
这句话是错误的。
我想导出这些格式字符串:
您有%s条未读邮件
对不起,%s。我恐怕不能那样做。
这句话是错误的。
哪种方法和/或算法可以帮助我?
我的第一个想法是使用机器学习的东西,但我的胆量告诉我这可能是一个相当经典的问题。
一些额外要求:
参数的类型是无关紧要的,即如果参数最初是
%s
或%d
或者填充或对齐,我不需要信息。
可以有多个参数(或根本没有参数)
通常,数据由数千个格式化字符串组成,但只有数十种格式模式。
没有找到相关结果
已邀请:
1 个回复
耐钨徒
替换间隙。 (您可能希望构建一个函数,该函数返回基于LCS的格式字符串,并在集群上返回
/
。) 上面是一个贪心算法,给定{
,
}产生
。您可能希望以递归方式将由单个字符(或单个非空白字符等)分隔的任何一对出现的
替换为单个
。