&引用;减去;excel中字符串中的字符串

&引用;减去;excel中字符串中的字符串,excel,Excel,我有一个excel工作表,其中有一列,包含50行逗号分隔的文本。逗号的数量在工作表中以随机间隔增加。每次添加逗号时,都会在现有字符串的随机位置添加一个新词: FALSE,TRUE,TRUE,TRUE,FALSE FALSE,TRUE,TRUE,TRUE,FALSE FALSE,TRUE,TRUE,FALSE FALSE,TRUE,TRUE,FALSE TRUE,TRUE,FALSE TRUE,TRUE,FALSE TRUE,TRUE TRUE,TRUE TRUE,TRUE TRUE 我想查找每

我有一个excel工作表,其中有一列,包含50行逗号分隔的文本。逗号的数量在工作表中以随机间隔增加。每次添加逗号时,都会在现有字符串的随机位置添加一个新词:

FALSE,TRUE,TRUE,TRUE,FALSE
FALSE,TRUE,TRUE,TRUE,FALSE
FALSE,TRUE,TRUE,FALSE
FALSE,TRUE,TRUE,FALSE
TRUE,TRUE,FALSE
TRUE,TRUE,FALSE
TRUE,TRUE
TRUE,TRUE
TRUE,TRUE
TRUE
我想查找每行字符串中添加的内容,例如:

N/A
TRUE
N/A
FALSE
N/A
FALSE
N/A
N/A
TRUE
N/A
到目前为止,我已尝试将每一行(例如第2行)与其下的行(第3行)进行比较,并使用搜索功能从第2行中删除第3行中的文本:

=(ISERROR(SEARCH(Q52,Q51,1)),Q51,RIGHT(Q51,LEN(Q51)-LEN(Q52)))

如果将新文本添加到字符串的开头或结尾,但如果在字符串的中间添加新文本,则不适用。有人知道这方面的解决方法吗?

使用

=IF(A2="",NA(),IF(LEN(A1)-LEN(SUBSTITUTE(A1,"TRUE",""))<>LEN(A2)-LEN(SUBSTITUTE(A2,"TRUE","")),"TRUE",IF(LEN(A1)-LEN(SUBSTITUTE(A1,"FALSE",""))<>LEN(A2)-LEN(SUBSTITUTE(A2,"FALSE","")),"FALSE",NA())))
=IF(A2=”,NA(),IF(LEN(A1)-LEN(替换为(A1,“真”),LEN(A2)-LEN(替换为(A2,“真”,真),IF(LEN(A1)-LEN(替换为(A1,“假”),NA())LEN(A2)-LEN(替换为(A2,“假”,“假”),NA())
将True和False的数量与下面的数字进行比较,并返回差值

使用

=IF(A2="",NA(),IF(LEN(A1)-LEN(SUBSTITUTE(A1,"TRUE",""))<>LEN(A2)-LEN(SUBSTITUTE(A2,"TRUE","")),"TRUE",IF(LEN(A1)-LEN(SUBSTITUTE(A1,"FALSE",""))<>LEN(A2)-LEN(SUBSTITUTE(A2,"FALSE","")),"FALSE",NA())))
=IF(A2=”,NA(),IF(LEN(A1)-LEN(替换为(A1,“真”),LEN(A2)-LEN(替换为(A2,“真”,真),IF(LEN(A1)-LEN(替换为(A1,“假”),NA())LEN(A2)-LEN(替换为(A2,“假”,“假”),NA())
将True和False的数量与下面的数字进行比较,并返回差值


也许这也有帮助,它允许多个添加

=IF(LEN(SUBSTITUTE(B4,"TRUE","0"))=LEN(SUBSTITUTE(SUBSTITUTE(B4,"TRUE","0"),"0","")),0,LEN(SUBSTITUTE(B4,"TRUE","0"))-LEN(SUBSTITUTE(SUBSTITUTE(B4,"TRUE","0"),"0","")))


也许这也有帮助,它允许多个添加

=IF(LEN(SUBSTITUTE(B4,"TRUE","0"))=LEN(SUBSTITUTE(SUBSTITUTE(B4,"TRUE","0"),"0","")),0,LEN(SUBSTITUTE(B4,"TRUE","0"))-LEN(SUBSTITUTE(SUBSTITUTE(B4,"TRUE","0"),"0","")))


对于非真/假bindary(即,如果文本是随机的,而不是真/假的),这是一个非常优雅的解决方案


对于非真/假bindary(即,如果文本是随机的,而不是真/假的),这是一个非常优雅的解决方案


您能解释一下输入/输出吗?
2
在哪里添加了
TRUE
?它看起来与
1
相同?编辑:哦,你是从下至上开始的吗?新词总是在字符串的末尾吗?或者它可以添加到中间吗?是的,它是从底部向上开始的。新词随机添加到现有字符串中,即可以添加到中间、开头、结尾等。您能解释一下输入/输出吗?
2
在哪里添加了
TRUE
?它看起来与
1
相同?编辑:哦,你是从下至上开始的吗?新词总是在字符串的末尾吗?或者它可以添加到中间吗?是的,它是从底部向上开始的。新词随机添加到现有字符串中,即可以添加到中间、开头、结尾等。对于真/假二进制,这是一个很好的解决方案。但是,是否有一种含糊不清的解决方案可以用于添加随机文本?@bm13563那么您的示例应该表明它是随机文本,而不仅仅是对或错。@bm13563您需要的是vba,而不是公式。明白了,我会将问题标记为已回答,因为您的解决方案适用于发布的示例。然后我会在vba论坛上发布同样的问题,并附上一个经过修改的例子。这是一个很好的解决真/假二进制问题的方法。但是,是否有一种含糊不清的解决方案可以用于添加随机文本?@bm13563那么您的示例应该表明它是随机文本,而不仅仅是对或错。@bm13563您需要的是vba,而不是公式。明白了,我会将问题标记为已回答,因为您的解决方案适用于发布的示例。然后,我将在vba论坛上发布同样的问题,并附上一个经过修改的示例。