簡體   English   中英

如何匹配數組中包含的字符串中的字符串模式

[英]How to match a string pattern in a string contained in array

我需要檢查字符串中是否包含數組中的字符串模式。 我正在使用以下代碼,但它與數組中包含的確切字符串而不是模式匹配,因此以下操作將失敗。 我怎樣才能做到這一點?

String[] stringArrayToBlock = { "#", "/", "string1:", "string2" };
String SearchString = "String1:sdfsfsdf";

 if (stringArrayToBlock.Contains(SearchString.Trim().ToLower()))
 { 
   //Do work
 }

我想你應該反之亦然。 此外,如果您願意使用LINQ,則Enumerable.Any方法非常方便:

string[] stringArrayToBlock = { "#", "/", "string1:", "string2" };
string SearchString = "String1:sdfsfsdf";
string lowerCaseString = SearchString.Trim().ToLower();
if (stringArrayToBlock.Any(s => lowerCaseString.Contains(s)))    
{
    //Do work
}

使用LINQ Any()方法來確定數組的任何元素是否滿足條件。 這里使用的Contains方法是string ,而不是Array

String[] stringArrayToBlock = { "#", "/", "string1:", "string2" };
String SearchString = "String1:sdfsfsdf";

 if (stringArrayToBlock.Any(s => SearchString.Trim().ToLower().Contains(s)))
 { 
     //Do work
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM