[英]minimize length of string in C#
我想减少字符串的长度。 喜欢...
这串...
string foo ="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean in vehicula nulla. Phasellus libero dui, luctus quis bibendum sit amet";
变成这个字符串...
知乎...
我该怎么做呢? 谢谢!
string foo ="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean in vehicula nulla. Phasellus libero dui, luctus quis bibendum sit amet";
string small_foo = foo.SubString(0, 50);
使用 Substring 获取字符串的前 50 个字符。 http://msdn.microsoft.com/en-us/library/aka44szs.aspx
代码
public string Truncate(string input, int length)
{
if (input.Length < length) return input;
int index = input.IndexOf(' ', length);
return input.Substring(0, index) + "...";
}
...
string foo ="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean in vehicula nulla. Phasellus libero dui, luctus quis bibendum sit amet";
string bar = Truncate(foo, 50);
Console.WriteLine(bar);
输出
知乎...
代替
Lorem ipsum dolor 坐 amet,consectetur adipiscing 精英。 Aenean in vehicula nulla。 Phasellus libero dui, luctus quis bibendum 坐 amet
尝试这个
string myString = ".....";
int maxLength = 30;
if( myString.Length > maxLength ){
myString = myString.SubString(0, maxLength);
}
myString
现在是maxLength
大小的最大值。
public static string TruncatString(string input, int maxLength)
{
if (input.Length < maxLength) return input;
return input.Substring(0, maxLength - 3) + "...";
}
干得好:
class Program
{
static void Main(string[] args)
{
string foo = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean in vehicula nulla. Phasellus libero dui, luctus quis bibendum sit amet";
int maxlength = 50;
string shortFoo = StringShortener(foo, maxlength);
Console.WriteLine("{0} \n becomes: \n {1}", foo, shortFoo);
Console.ReadKey();
}
private static string StringShortener(string foo, int maxlength)
{
if (foo.Length <= maxlength)
return foo;
else
return foo.Substring(0, maxlength - 4) + "...";
}
}
给定字符串 -
var string = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean in vehicula nulla. Phasellus libero dui, luctus quis bibendum sit amet";
1. 第一场景
var maxlenght = 15;
var shortString =(string .Length > maxlenght ) ? string.Substring(0,maxlenght ) + "..." : string;
输出: “Lorem ipsum dol...”;
2. 第二种情况
var shortString =(string .Length > maxlenght ) ? string.Substring(0, string.IndexOf(" ", 15)) + "..." : string;
输出: “Lorem ipsum dolor...”;
如果你想要最后一句话完整,那么第二个 senario 是最好的......
这现在很好用...
public static string GetShortTitleForDisplay(string title, int noOfCharacter)
{
var shortTitle = title;
if (title.Length <= noOfCharacter) return shortTitle;
var pos = title.IndexOf(" ", noOfCharacter, StringComparison.Ordinal);
if (pos > 0)
shortTitle = title.Substring(0, pos) + " ...";
return shortTitle;
}
string foo ="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean in vehiculanulla. Phasellus libero dui, luctus quis bibendum sit amet";
string small_foo = foo.Substring(new Random().Next(0, urlsafe.Length), new Random().Next(2, 6));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.