在没有正则表达式的情况下删除数据中的前缀和后缀

Remove prefix and suffix in data without regex

目标:如果单元格 A1 以“BR”开头,请将“BR”替换为“-”。删除“L”后缀。 如果输入不是以“BR”开头,请删除“L”后缀。

约束条件: 公式只能使用以下函数(无 Regex):

可能的输入值patterns/examples:

到目前为止我发现了什么:
将 BR 前缀值转换为负数的公式: if(left(a1,2)="BR","-"&right(a1,len(a1)-2),a1)

去除“L”后缀的公式: if(right(a1,1)="L",left(a1,len(a1)-1),a1)

尝试:

=INDEX(IF(A1:A="",,SUBSTITUTE(SUBSTITUTE(A1:A, "BR", "-"), "L", )*1))

矫枉过正,但也有效:

=ARRAYFORMULA(IF(LEFT(A1:A, 2)="BR", "-"&RIGHT(
 IF(RIGHT(A1:A, 1)="L", LEFT(A1:A, LEN(A1:A)-1), A1:A), LEN(
 IF(RIGHT(A1:A, 1)="L", LEFT(A1:A, LEN(A1:A)-1), A1:A))-2), 
 IF(RIGHT(A1:A, 1)="L", LEFT(A1:A, LEN(A1:A)-1), A1:A)))