如果我有一个如下字符串:
String myString = "SET(someRandomName, \"hi\", u)";
Run Code Online (Sandbox Code Playgroud)
在哪里我知道它"SET("总是存在于字符串中,但是长度"someRandomName"未知,我将如何删除所有字符"("到第一个实例"""?所以要重新迭代,我想删除这个子字符串:"SET(someRandomName, \""from myString.
我怎么在C#.Net中这样做?
编辑:我不想为此使用正则表达式.
提供字符串将始终具有此结构,最简单的方法是使用String.IndexOf()查找第一次出现的索引".String.Substring()然后给你原始字符串的适当部分.
同样,您可以使用从字符串末尾String.LastIndexOf()查找第一个索引.然后,您将能够仅提取第二个参数的值(在您的示例中).""hi"
你最终会得到这样的东西:
int begin = myString.IndexOf('"');
int end = myString.LastIndexOf('"');
string secondArg = myString.Substring(begin, end - begin + 1);
Run Code Online (Sandbox Code Playgroud)
这将产生"\"hi\""在secondArg.
更新:要删除字符串的一部分,请使用以下String.Remove()方法:
int begin = myString.IndexOf('(');
int end = myString.IndexOf('"');
string altered = myString.Remove(begin + 1, end - begin - 1);
Run Code Online (Sandbox Code Playgroud)
这将产生"SET(\"hi\", u)"在altered.
| 归档时间: |
|
| 查看次数: |
18957 次 |
| 最近记录: |