首页 > 编程语言 >C#获取两个字符串的交集

C#获取两个字符串的交集

时间:2023-11-02 11:56:20浏览次数:28  
标签:return string C# str2 str1 交集 字符串 null

C#获取两个字符串的交集

1.前缀交集

/// <summary>
/// 获取两个字符串的前缀交集
/// </summary>
/// <param name="str1"></param>
/// <param name="str2"></param>
/// <returns></returns>
public static string GetPrefixIntersect(string str1, string str2)
{
    if (str1 == null || str2 == null) return null;

    string result = string.Empty;

    int len = str1.Length > str2.Length ? str2.Length : str1.Length;

    for (int i = 0; i < len; i++)
    {
        if (str1[i] == str2[i]) result += str1[i];
        else break;
    }

    return result;
}

2.所有交集

/// <summary>
/// 获取两个字符串的所有交集
/// </summary>
/// <param name="str1"></param>
/// <param name="str2"></param>
/// <returns></returns>
public static string GetIntersect(string str1, string str2)
{
    if (str1 == null || str2 == null) return null;

    return string.Join("", str1.Intersect(str2));
}

标签:return,string,C#,str2,str1,交集,字符串,null
From: https://www.cnblogs.com/nuomibaibai/p/17805068.html

相关文章

  • JavaScript中大于Math.pow(2, 53)的数,如何进行进制转换?精度问题,超过18位的数字如何进
    console.log('JavaScript中大于Math.pow(2,53)的数,如何进行进制转换?')//示例console.group('示例')console.log('使用bignumber.js库完美解决。[https://github.com/MikeMcl/bignumber.js/]')console.log('示例:18446744071545290752转为二进制')console.log......
  • Spring byName和byType两种注入方式;@Resource和@Autowired
    Spring控制翻转IOC可以理解为一个类,依赖注入可以理解为一个对象控制反转(IoC)是一个通用的概念,它可以用许多不同的方式去表达,依赖注入仅仅是控制反转的一个具体的例子。依赖注入的2种方法:1、构造函数依赖注入2、setter方法依赖注入自动装配分为3种:(Spring的byType、byName......
  • google analytics , looker , bigquery的区别
    GoogleAnalytics、Looker和BigQuery是Google提供的三种不同的数据服务,它们各自有不同的用途和功能。GoogleAnalytics:主要用途:GoogleAnalytics是一种网站和应用程序分析服务,它能帮助您理解用户如何与您的网站或应用互动。它收集关于页面浏览量、用户会话、用户行为......
  • CSP-J2023游记
    我去考了两场2023CSP,以下是我对其中CSP-J情况的记录,J组考前我分到的考场是在华二紫竹分校,离我家特别远,那个鬼地方都在郊区了。考试是8:30~12:00,又要求提前45分钟到,所以我起的特别早,6点钟就起床了。路上是妈妈给我打了个车,送我去考场的,整个路上差不多就用了1小时,我也没浪费......
  • JavaScript操作checkbox的方式
    JavaScript操作checkbox的方式和操作radio的方式相似,都是利用元素项的checked属性来完成。先获取checkbox元素集合,遍历集合,对集合中的每一项做操作。 <body> <p> <labelfor="hobby">Hobby: <inputtype="checkbox"name="hobby"value="reading"/>rea......
  • open the codelive panel to view files loaded from your ide:关闭codelive
    浏览器显示:  关闭的方法:Myeclipse中,选择servers,选择tomcat,点击disablecodelive ......
  • JavaScript 保存文件
       <scriptsrc="http://cdn.jsdelivr.net/g/filesaver.js"></script><script>functionSaveAsFile(t,f,m){try{varb=newBlob([t],{type:m});saveAs(b,f);}catch(......
  • highcharts network 网络图
    highchartsnetwork网络图要在边上加上箭头,十分困难?Re:HighChartsNetworkGraphArrowLinksWedJul15,20209:47amHi!Welcometoourforumandthanksforcontactinguswithyourquestion!FromtheAPI,thisoptionisnotpossible.Toachievethis,youhavetoext......
  • java字符串多行写法
    有一个很长的字符串,想分成多行书写,主要为了美观。 VB代码中可以将一个很长的字符串分成多行书写,例如:Stringstr="adfasdfasdfas\asdfasdfasdfasdf\asdfasdf" Java没有相似的处理方式。 变通处理方式:Strings="Itwasthebestoftimes,it......
  • Success Rate
    https://www.luogu.com.cn/problem/CF773A以后看到求最值都可以尝试二分。然后发现如果只是要求数值相等,是一定有解的,但是题目要求分子加上的不超过分母加上的,发现这个是有单调性的,因为\(k\)变大,分子分母变大的时候分子肯定还是小于等于分母的(简单推导即可)。很烦的是这个东西的......