用正则表达式理解数量的概念

understanding the concept of amounts with regex

我知道正则表达式不适用于数值,但是,我们如何使用正则表达式模式来区分 google 工作表公式中的数字?

例如:>=13 和 <13

A B
desired result
5 5♥
2 2♥
13 13♦♦♦
12 12♥
30 30♦♦♦
17 17♦♦♦
0 0♥
-4 -4♥
-12 -12♥
22 22♦♦♦
-55 -55♥
31 31♦♦♦
-13 -13♥
-31 -31♥

我可以用其他方法解决这个问题,例如:

=INDEX(REGEXREPLACE(REGEXREPLACE(REGEXREPLACE("" & A2:A16,
 "\b(^" & JOIN("$|^", SEQUENCE(13, 1, )) & "$)\b", "♥"),
 "(^-\d+)", "♥"),
 "(\d+$)", "♦♦♦"))

...但我觉得可能还有更多“regexy”解决方案。

战斗规则:

尝试:

=REGEXREPLACE(REGEXREPLACE(TO_TEXT(A1), "^(-\d+|[0-9]|1[0-2])$", "♥"), "^([^♥]+)$", "♦♦♦")

可以先加钻石,小于13的时候再换成红心:

=REGEXREPLACE(A1 & "♦♦♦"; "^(-\d+|1[0-2]|\d)♦♦♦$"; "♥")

正则表达式查找三种模式:

  • -\d+: 任何负数
  • 1[0-2]:10、11 或 12
  • \d: 0,1,2,..., 或 9.