我正在尝试检查在某个消息之后是否输入了任何字符串我确实在SQL中有一个工作版本我想在C#中使用几乎相同的那个#
SQL中的用法:
ELSE IF @Msg LIKE '/Message %'
C#中的用法:
else if (Msg == "/Message ")
我希望该工具检查在/ Message之后是否输入任何字符串。
提前致谢:)
答案 0 :(得分:3)
您可以使用以下string
功能:
var Msg = "A message to check";
LIKE 'SomeText%'
:
if (Msg.StartsWith("SomeText"))
LIKE '%SomeText'
:
if (Msg.EndsWith("SomeText"))
LIKE '%SomeText%'
:
if (Msg.Contains("SomeText"))
答案 1 :(得分:1)
以下是TSQL LIKE关键字的工作原理。
using System;
namespace SqlLike
{
class Program
{
static void Main(string[] args)
{
var findMe = "ABCHelloXYZ";
// LIKE '......%'
if (findMe.StartsWith("ABC"))
{
Console.WriteLine("Yay");
}
// LIKE '%......'
if (findMe.EndsWith("XYZ"))
{
Console.WriteLine("Woohoo");
}
// LIKE '%......%'
if (findMe.Contains("Hello"))
{
Console.WriteLine("JackPot!!");
}
Console.ReadLine();
}
}
}
答案 2 :(得分:0)
您的要求有点模糊,但这应该可以帮助您(根据需要进行一些调整)。
String Msg = "/Message somethingelse";
if (Msg.Contains("/Message ") && (Msg.Length > 9) )
{
String str = Msg.Substring(9);
Console.Write("str: " + str);
}
正如@Scott建议你也可以使用:
if (Msg.StartsWith("/Message ") && (Msg.Length > 9))
{
String str = Msg.Substring(9);
Console.Write("str: " + str);
}