gpt4 book ai didi

string - Matlab - 如何逐个字母地比较两个字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 19:49:36 26 4
gpt4 key购买 nike

本质上,我有两个长度相等的字符串,为了举例起见,我们说“AGGTCT”和“AGGCCT”。我想逐个位置比较它们,并在它们不匹配时读出。所以在这里我希望得到 1,因为只有 1 个位置与位置 4 不匹配。如果有人对位置比较代码有想法,那将对我入门有很大帮助。

谢谢!!

最佳答案

使用以下语法获取相同大小的字符串中不同字符的数量:

sum( str1 ~= str2 )

如果你想不区分大小写,使用:

sum( lower(str1) ~= lower(str2) )

表达式 str1 ~= str2 对两个字符串进行逐字符比较,生成与字符串大小相同的逻辑向量,其中 true它们不匹配(使用 ~=)并且匹配时为 false。要获得结果,只需将 true 值(不匹配)的数量相加即可。

编辑:如果您想计算匹配字符的数量,您可以:

  1. 使用“等于”== 运算符(而不是“不等于”~= 运算符):

    sum( str1 == str2 )
  2. 从总数中减去不匹配的数量:

    numel(str1) - sum( str1 ~= str2 )

关于string - Matlab - 如何逐个字母地比较两个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16587306/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com