假设我有两个字符串:
string s1 = "hello";
string s2 = "hello world";
有没有办法可以获得string s3 = " world";
这两个字符串之间的区别?
修改
这种情况总是存在差异
s1 = "abc"
s2 = "abcd ads as "
答案 0 :(得分:26)
使用string s3 = s2.Replace(s1, "");
编辑:请注意s1
中s2
中s3
的所有{{1}}都不会出现。请务必仔细考虑此帖子上的评论,以确认这是您想要的结果,例如@mellamokb评论中提到的情景。
答案 1 :(得分:5)
string s1 = "hello";
string s2 = "hello world";
string s3 = s2.replace(s1,"");
答案 2 :(得分:5)
如果您定义的案例是正确的,则替代解决方案将是:
string s3 = s2.substring(s1.Length);
这假设第二个字符串以与第一个字符串完全相同的字符开头,您只想切断初始重复。
答案 3 :(得分:4)
使用简单的替换
string s3 = s2.Replace(s1, "");
答案 4 :(得分:2)
答案 5 :(得分:1)
在代码之外没有条件的第一个答案:
string s3 = null;
if (s2.StartsWith(s1))
{
s3 = s2.Substring(s1.Length);
}