認爲我有以下字符串:如何替換部分字符串?
string str1 = "<tag tsdfg> some other random text";
string str2 = "<tag sdfgsdfgfsdg> some other random text";
string str3 = "<tag 1564> some other random text";
我想改變這些字符串
"<tag> some other random text"
認爲我有以下字符串:如何替換部分字符串?
string str1 = "<tag tsdfg> some other random text";
string str2 = "<tag sdfgsdfgfsdg> some other random text";
string str3 = "<tag 1564> some other random text";
我想改變這些字符串
"<tag> some other random text"
我認爲你需要'「\
你是對的,在OP案例中,它不會被需要,但作爲一個通用的解決方案,是的。將編輯 – Jcl
您可以使用正則表達式替換標籤內的所有任意文本
Regex.Replace("<tag tsdfg> some random text", @"<(.*)?\s+(.*)?>", "<$1>");
這將有效地替換任何標籤末尾的空格後面的文本。
嘗試
str1.Replace((str1.Substring(str1.IndexOf("<"), str1.IndexOf(">"))), "<tag>");
,你可以這樣做:
str1="<tag>" + str1.Remove(0, str1.IndexOf(">") + 1);
從索引0消除了> +1,然後將它添加到 「標籤」
那沒有達到要求 –
@JustinHarvey我編輯它爲什麼不呢? –
他正在嘗試將其更改爲刪除標籤內的「tsdfg」。 –
如果<tag
後,總是會有一個空白,那麼你可以使用Split()
這樣:
string str1 = "<tag tsdfg> some other random text";
string values = str1.Split(' ')[0]+">";
你也可以做到這一點這樣:
string str = "<tag tsdfg> some other random text";
string newStr = new string(str.TakeWhile(c => !Char.IsWhiteSpace(c))
.Concat(str.SkipWhile(c => c != '>'))
.ToArray());
Console.WriteLine(newStr); // "<tag> some other random text"
讓我們把它至少一次不像不是拆卸或更換,但提取其他的解決方案; - ]
string str1 = "<tag tsdfg> some other random text";
Match match = Regex.Match(str1, @"\<(tag).+?\>(.+)");
string result = String.Format("<{0}>{1}", match.Groups[1].Value, match.Groups[2].Value);
Console.WriteLine(result);
'STR1 = STR2 = STR3 = 「」'? :) –
嗯我給了一個壞例子:p – maartenvdv
@SonerGönül實際上'str1 = str2 = str3 =「其他一些隨機文本」'爲了正確! :-D –
Jcl