我有c#字符串,如下所示:
"abc";
"def.";
当我将这些变量读入另一个变量时,我需要一些简单的方法来检查字符串的最后一个字符,如果它不是一个句点,那么在该字符串后附一个句点。
有没有人对我能做到这一点的简单方法有任何想法?
答案 0 :(得分:6)
if (!str.EndsWith(".")) str += ".";
是否有理由不能以不同的方式做到这一点?
答案 1 :(得分:4)
namespace ExtensionMethods
{
public static class StringExtensionMethods
{
public static string EnsureEndsWithDot(this string str)
{
if (!str.EndsWith(".")) return str + ".";
return str;
}
}
}
答案 2 :(得分:0)
这应该......
// Appends a ., or if myString was empty to begin with, makes it "."
myString = (myString != null && myString.Length != 0 && myString[myString.Length - 1] == '.') ? myString : (myString ?? "") + ".";
答案 3 :(得分:0)
using System;
namespace StackoverflowConsoleApp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(StringExtensionMethods.EnsureEndsWithDot("abc"));
}
}
}
namespace StackoverflowConsoleApp
{
/// <summary>
/// This class contains string extensions
/// </summary>
public static class StringExtensionMethods
{
/// <summary>
/// constant dot
/// </summary>
private const string dot = ".";
/// <summary>
/// Ensures the string ends with dot character
/// </summary>
/// <param name="text"><see cref="string"/>Takes a string parameter</param>
/// <returns><see cref="string"/>returns a string parameter</returns>
public static string EnsureEndsWithDot(this string text)
{
if (!text.EndsWith(dot))
{
return string.Format("{0}{1}", text, dot);
}
return text;
}
}
}