摘要:如何在前面加上1与我们电话号码

问题描述 投票:0回答:4

enter image description here

我有一组中的表列多格式的电话号码。我想删除所有非数字组成,并有条件在前面加一个1(如果不存在的话)。到目前为止,我有:

=ArrayFormula( (REGEXREPLACE( E1:E , "([^0-9]+)" , "" ) )

这消除非NUMERICS。如何有条件地与1预先准备?

google-sheets
4个回答
2
投票
=ARRAYFORMULA(REGEXREPLACE(TO_TEXT(
 IF(E2:E<>"", IF(LEFT(E2:E, 1)<>"1", 
 "1"&E2:E, E2:E))), "([^0-9]+)", ""))


1
投票

我认为这将是这个,如果你想使用REGEXREPLACE,但@ player0是正确的,可能更容易使用LEFT

=regexreplace(A1,"(^[^1])","1$1")

1
投票
=ARRAYFORMULA(REGEXREPLACE(TO_TEXT(TRANSPOSE(SPLIT(
 TEXTJOIN("♥", 1, QUERY(TRANSPOSE(IFERROR(SPLIT(IF(E2:E<>"", 
 IF(LEFT(E2:E, 1)<>"1", "1"&E2:E, E2:E), ), "-"), )), , 
 ROWS(E2:E))), "♥", 0))), " ", ""))


1
投票

由于源数据显然是纯文本(或容易重新格式化为例如)一个较短的版本:

=ArrayFormula(if(E4:E="","",regexreplace(1&REGEXREPLACE(E4:E,"\D",""),"^11","1")))

(上前置在所有情况下1,剥一个1其中number否则将开始11之前。)

© www.soinside.com 2019 - 2024. All rights reserved.