用正则表达式理解数量的概念
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”解决方案。
战斗规则:
- 正则表达式模式
- 无
IF
-陈述
>=13
加 ♦♦♦
<13
加♥
- 没有
IFERROR
个枢轴
- 没有非正则表达式的解决方案
尝试:
=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.
我知道正则表达式不适用于数值,但是,我们如何使用正则表达式模式来区分 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”解决方案。
战斗规则:
- 正则表达式模式
- 无
IF
-陈述 >=13
加 ♦♦♦<13
加♥- 没有
IFERROR
个枢轴 - 没有非正则表达式的解决方案
尝试:
=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.