替换或替换所有非字母数字字符
SUBSTITUTE or REPLACE all non-alphanumeric characters
此数组公式(CTRL+SHIFT+ENTER)trim任何非字母数字字符:
{=TEXTJOIN("";1;MID(D2;ROW(INDIRECT("1:"&LEN(D2)))*IFERROR(SEARCH(MID(D2;ROW(INDIRECT("1:"&LEN(D2)));1);"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0;LEN(D2)+1);1))}
但我想substitute/replace这个非字母数字字符用简单的space,只能用正则或数组公式。
可能吗?
看来你可以使用以下方法:
B1
中的CSE-entered公式:
=TRIM(CONCAT(IF(ISNUMBER(SEARCH(MID(A1,ROW(A:INDEX(A:A,LEN(A1))),1),"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")),MID(A1,ROW(A:INDEX(A:A,LEN(A1))),1)," ")))
对于 ms365 用户:
=LET(X,MID(A1,SEQUENCE(LEN(A1)),1),TRIM(CONCAT(IF(ISNUMBER(SEARCH(X,"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")),X," "))))
它也会防止你的公式不稳定。
此数组公式(CTRL+SHIFT+ENTER)trim任何非字母数字字符:
{=TEXTJOIN("";1;MID(D2;ROW(INDIRECT("1:"&LEN(D2)))*IFERROR(SEARCH(MID(D2;ROW(INDIRECT("1:"&LEN(D2)));1);"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0;LEN(D2)+1);1))}
但我想substitute/replace这个非字母数字字符用简单的space,只能用正则或数组公式。 可能吗?
看来你可以使用以下方法:
B1
中的CSE-entered公式:
=TRIM(CONCAT(IF(ISNUMBER(SEARCH(MID(A1,ROW(A:INDEX(A:A,LEN(A1))),1),"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")),MID(A1,ROW(A:INDEX(A:A,LEN(A1))),1)," ")))
对于 ms365 用户:
=LET(X,MID(A1,SEQUENCE(LEN(A1)),1),TRIM(CONCAT(IF(ISNUMBER(SEARCH(X,"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")),X," "))))
它也会防止你的公式不稳定。