C# 两个字符串之间的差异#
假设我有两个字符串:C# 两个字符串之间的差异#,c#,string,C#,String,假设我有两个字符串: string s1 = "hello"; string s2 = "hello world"; 有没有办法得到一个字符串s3=“world”这两个字符串之间的区别是什么 编辑: 在这种情况下,差异总是存在的 s1 = "abc" s2 = "abcd ads as " 使用字符串s3=s2。替换(s1,“”) 编辑:请注意,s2中出现的所有s1将在s3中消失。请务必仔细考虑这个帖子上的注释,以确认这是你想要的结果,例如在评论中提到的场景。 < P>如果(大的“如果”)
string s1 = "hello";
string s2 = "hello world";
有没有办法得到一个字符串s3=“world”代码>这两个字符串之间的区别是什么
编辑:
在这种情况下,差异总是存在的
s1 = "abc"
s2 = "abcd ads as "
使用字符串s3=s2。替换(s1,“”)代码>
编辑:请注意,s2
中出现的所有s1
将在s3
中消失。请务必仔细考虑这个帖子上的注释,以确认这是你想要的结果,例如在评论中提到的场景。 < P>如果(大的“如果”)<代码> S1 < /代码>始终是<代码> S2< /代码>的子串,那么你可以使用并找到“代码> S2< /代码> <代码> S1 < /Case>是。< P>用简单的替换< /P>
string s1 = "hello";
string s2 = "hello world";
string s3 = s2.replace(s1,"");
string s3 = s2.Replace(s1, "");
如果您定义的案例是正确的,则备选解决方案为:
string s3 = s2.substring(s1.Length);
这是假定第二个字符串以与第一个字符串完全相同的字符开头,您只想切掉最初的重复。第一个答案不带代码外的条件:
string s3 = null;
if (s2.StartsWith(s1))
{
s3 = s2.Substring(s1.Length);
}
您需要更清楚地定义差异。关于s1=“hello!”
和s2=“hello world!”
的场景呢?或者s1=“建筑商鲍勃”
和s2=“建筑商鲍勃”
?一个字符串总是只包含另一个字符串的精确子字符串吗?更复杂的区别是什么。。。比如说,“abc”和“1bC4”,只要记住,如果s1在s2中出现不止一次,那么可能存在问题。如果s2=“hello hello”,那么这将返回一个空格,因为“hello”被多次匹配。@JB King-同意,我认为需要从OP获得更多关于“差异”确切含义的信息+对于mellamokbYou的评论,我的回答排在第二位,我试图给出我的答案,但已经有两个答案了