gpt4 book ai didi

c# - 检查字符数组是否包含不同于允许的字符

转载 作者:太空宇宙 更新时间:2023-11-03 18:53:53 25 4
gpt4 key购买 nike

我的问题是我有一个长度为 4 的字符数组,它基本上表示一个单词(这个数组是 dictionary<char[],int> 中的一个键,不过这应该无关紧要)。我需要检查这些词是否仅由允许的字符组成,在本例中为 {A, T, C, G}。

所以以下所有单词都是有效的:AAAA、GGGG、GCGC、ATAT、ATGC、CCGA 等。

虽然以下不会:AFGC、AAAS、TGCW 等

由于性能原因,我想避免转换为字符串。我的想法是这样的:

if (word.Contains(!'ACTG'))

应该表示:如果(数组单词包含与 A 和/或 C 和/或 T 和/或 G 不同的字符=> 返回 false)。

问题是我不知道如何明智地编写这种语法(如果这甚至有可能以这种简单的方式完成的话)。

最佳答案

LINQ 非常适合这个:

char[] allowed = { 'A', 'T', 'C', 'G' };
if (word.Any(c => !allowed.Contains(c)))
{
// BZZZZTT! Bad character in word
}

关于c# - 检查字符数组是否包含不同于允许的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50300678/

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