在Excel中使用不等式字符串比较(String Comparison Using Inequali

2019-06-26 17:53发布

有人可以提供到Excel如何比较使用不平等运营商在Excel中字符串的参考? 我已经发现了一些意外的行为:

在下面的例子中,前两列是字符串,列C是表达式=A2<B2 ,第三列是预期的行为,并且最后一列是预期的行为是否匹配实际。

Comparison  Benchmark   Is A < B?   Expected    Pass?
Q1 2009     Q4 2012       TRUE      TRUE        TRUE
Q2 2009     Q4 2012       TRUE      TRUE        TRUE
Q3 2009     Q4 2012       TRUE      TRUE        TRUE
Q4 2009     Q4 2012       TRUE      TRUE        TRUE
Q1 2010     Q4 2012       TRUE      TRUE        TRUE
Q2 2010     Q4 2012       TRUE      TRUE        TRUE
Q3 2010     Q4 2012       TRUE      TRUE        TRUE
Q4 2010     Q4 2012       TRUE      TRUE        TRUE
Q1 2011     Q4 2012       TRUE      TRUE        TRUE
Q2 2011     Q4 2012       TRUE      TRUE        TRUE
Q3 2011     Q4 2012       TRUE      TRUE        TRUE
Q4 2011     Q4 2012       TRUE      TRUE        TRUE
Q1 2012     Q4 2012       TRUE      TRUE        TRUE
Q2 2012     Q4 2012       TRUE      TRUE        TRUE
Q3 2012     Q4 2012       TRUE      TRUE        TRUE
Q4 2012     Q4 2012       FALSE     FALSE       TRUE
Q1 2013     Q4 2012       TRUE      FALSE       FALSE
Q2 2013     Q4 2012       TRUE      FALSE       FALSE
Q3 2013     Q4 2012       TRUE      FALSE       FALSE
Q4 2013     Q4 2012       FALSE     FALSE       TRUE
Q1 2014     Q4 2012       TRUE      FALSE       FALSE
Q2 2014     Q4 2012       TRUE      FALSE       FALSE
Q3 2014     Q4 2012       TRUE      FALSE       FALSE

对于基准日期之前,看起来像Excel中的整个字符串比较,而基准日之后,仅Excel,直到找到一个字符不是在比较类似的人物比较少的字符串。

Answer 1:

Excel的是什么呢这里是它比较两个字符串逐个字符左到右,直到它找到一个匹配,然后用更高的价值字符的字符串变为更大的字符串。 这是比较字符串的标准方法 - 它在几乎所有的编程语言,数据库和其他软件包使用。

因此,例如,在第一线进行比较会是这样的:

Comparison  Benchmark   Outcome
    Q           Q        Equal
    1           4        Benchmark is greater - done comparing
 [space]     [space]     Ignored
    2           2        Ignored
    0           0        Ignored
    0           1        Ignored
    9           2        Ignored 

对于第四行这将是:

Comparison  Benchmark   Outcome
    Q           Q        Equal
    4           4        Equal
 [space]     [space]     Equal
    2           2        Equal
    0           0        Equal
    0           1        Benchmark is greater - done comparing
    9           2        Ignored 

而对于最后一行将是:

Comparison  Benchmark   Outcome
    Q           Q        Equal
    3           4        Benchmark is greater - done comparing
 [space]     [space]     Ignored
    2           2        Ignored
    0           0        Ignored
    1           1        Ignored
    4           2        Ignored 


文章来源: String Comparison Using Inequalities in Excel