使用.Contains比较多个字符串

时间:2019-06-26 04:12:48

标签: c#

我正在尝试比较一个字符串,看看它是否包含一个诅咒词。我以为我可以使用str.Contains(“” ||“”)来做到这一点,尽管我很快意识到我不能使用||。有两个字符串。我将用什么代替它?

str.Contains("123" || "abc");

我希望它查看是否包含123或abc,但是代码段无法正常工作,因为它无法比较两个字符串。

4 个答案:

答案 0 :(得分:2)

var str = "testabc123";
var str2 = "helloworld";
var bannedWords = new List<string>
{
    "test",
    "ok",
    "123"
};
var res = bannedWords.Any(x => str.Contains(x));       //true
var res2 = bannedWords.Any(x => str2.Contains(x));     //false

您可以执行以下操作。创建一个包含脏话的列表,然后您可以检查字符串是否包含列表中的任何单词。

答案 1 :(得分:0)

尝试-

#df defined earlier
#make values reactive
  dat <-  reactiveValues(data = df)

  observe({
    dat$data <-df
  })

  observe({
    if(!is.null(input$contents))
      dat$data <- hot_to_r(input$contents)
  })


  output$contents <- renderRHandsontable({

    req(dat$data)
    rhandsontable(dat$data)
  })

  #function to save data after it is edited
  save <- function(){

    if(is.null(input$contents)){
      return(df)
    }else{

    df_new <- hot_to_r(input$contents)

    #return new data frame
    a <- as.data.frame(df_new)
    return(a)
    }
  }

答案 2 :(得分:0)

尝试以下方法

using System;
using System.Collections.Generic;

public class Program
{
    private static final List<String> curseWords = new List<String>() {"123", "abc"};

    public static void Main()
    {
        String input = "text to be checked with word abc";    

        if(isContainCurseWord(input)){
            Console.WriteLine("Input Contains atlease one curse word");
        }else{
            Console.WriteLine("input does not contain any curse words")
        }

    }

    public static bool isContainCurseWord(String text){

        for(String curse in curseWords){
            if(text.Contains(curse)){
                return true;
            }
        }
        return false;
    }   
}

答案 3 :(得分:-1)

尝试-

var array = new List<String>() {"123", "abc"};

var found = array.Contains("abc");

Console.WriteLine("Contains: {0}", found);