YouTube等社交媒体平台不会显示视频发布的时间。相反,它们显示了视频发布的时间,这使得确定日期变得特别棘手。
我有一个基于inpnut日期计算周数(B)的公式,inpnut日期是postDate列(G)的相对值。
预期结果:
- (1)虽然这是工作大部分罚款,我似乎找不到一种方法,使11个月的回报“"。它返回从输入日起4周,这是不正确的。
- (2)同样的事情发生在岁月里。当post日期包含1时,它将产生1年而不是预期结果(在11年的情况下为2012年)。如果发生精确匹配,则无论是哪个数字,公式都应该产生结果。
这可能不是计算月、年和周数的最有效方法。此外,这个解决方案不是一个可持续的解决方案,因为每次向工作表添加新数据时,它都需要更改,因此生成此输入的任何替代方案都非常有用。
这是我正在使用的工作表的链接。
下面是我的公式:
=IF(REGEXMATCH(N11, "(\d+)days"), 0,
IF(REGEXMATCH(N11, "(\d+)'minutes'"), 0,
IF(REGEXMATCH(N11, "(\d+)hours"), 0,
IF(REGEXMATCH(N11, "1 day"), 0,
IF(REGEXMATCH(N11, "2 days"), 0,
IF(REGEXMATCH(N11, "3 days"), 0,
IF(REGEXMATCH(N11, "4 days"), 0,
IF(REGEXMATCH(N11, "5 days"), 0,
IF(REGEXMATCH(N11, "6 days"), 0,
IF(REGEXMATCH(N11, "7 days"), 0,
IF(REGEXMATCH(N11, "8 days"), 1,
IF(REGEXMATCH(N11, "9 days"), 1,
IF(REGEXMATCH(N11, "10 days"), 1,
IF(REGEXMATCH(N11, "1 week"), 1,
IF(REGEXMATCH(N11, "2 weeks"), 2,
IF(REGEXMATCH(N11, "3 weeks"), 3,
IF(REGEXMATCH(N11, "4 weeks"), 4,
IF(REGEXMATCH(N11, "1 month"), 4,
IF(REGEXMATCH(N11, "2 months"), 8,
IF(REGEXMATCH(N11, "3 months"), 12,
IF(REGEXMATCH(N11, "4 months"), 16,
IF(REGEXMATCH(N11, "5 months"), 20,
IF(REGEXMATCH(N11, "6 months"), "",
IF(REGEXMATCH(N11, "7 months"), "",
IF(REGEXMATCH(N11, "8 months"), "",
IF(REGEXMATCH(N11, "9 months"), "",
IF(REGEXMATCH(N11, "10 months"), "",
IF(REGEXMATCH(N11, "'11' months"), "",
IF(REGEXMATCH(N11, "1 year"), "",
IF(REGEXMATCH(N11, "2 years"), "",
IF(REGEXMATCH(N11, "3 years"), "",
IF(REGEXMATCH(N11, "4 years"), "",
IF(REGEXMATCH(N11, "5 years"), "",
IF(REGEXMATCH(N11, "6 years"), "",
IF(REGEXMATCH(N11, "7 years"), "",
IF(REGEXMATCH(N11, "8 years"), "",
IF(REGEXMATCH(N11, "9 years"), "",
IF(REGEXMATCH(N11, "10 years"), "",
IF(REGEXMATCH(N11, "11 years"), "",
WEEK(B113, 2) - WEEK(DATE(YEAR(B113),1,1), 2) + 1)))))))))))))))))))))))))
))))))))))))))
1条答案
按热度按时间mbzjlibv1#
你根本不需要正则表达式,你可以在Google表单中使用日期进行计算:
=find(" ";A1)
-查找数字和单位(日/月/年)之间的分割空间=left(A1;B1-1)
-它从差值中获取数字,我将其放入一个单独的字段中,因为它被多次使用=lower(mid(A1;B1+1;1))
-它从单元中获取第一个字母并将其转换为小写。该值随后也会多次使用=now()-date(if(D1="y";C1;0);if(D1="m";C1;0)+1;if(D1="d";C1;0)-1)
-从当前日期中减去年/月/日数。您必须将此单元格显式地格式化为日期(菜单格式->数字->日期),以便以人类可读的形式查看结果。主公式首先将差值转换为日期,并对月数和天数进行调整。
将计算扩展到小时和分钟等。你必须注意,只有一个字母的缩写太短了。另外,创建一个时间值的函数是
TIME
,而不是DATE
,但您可以在计算中混合两者的结果。(一天的时间是逗号后的部分,逗号前是自固定参考日期以来的天数。)顺便说一句:对于许多只显示日期差异的服务,您只需单击或将鼠标悬停在该差异上即可查看实际日期而无需转换。