簡體   English   中英

用另一個字符串替換點之前的字符串

[英]Replace string before dot with another string

我有一個像下面這樣的字符串:

String str = "abc.History_logs";

現在,我想用此固定字符串替換點之前的字符串: apc

所以最終的字符串將是這樣的:

apc.History_logs;

代碼:

String str = "abc.History_logs";
string final = string.Join('apc.',str.Substring(str.IndexOf(".") + 1).Trim()); //error:invalid arguments for join

您可以簡單地使用string.Concat

string final = string.Concat("apc.", str.Substring(str.IndexOf(".") + 1).Trim());

我不認為String.Join(String, String)存在重載方法

您可以使用此正則表達式

Regex.Replace(str,@".*?\.","apc.")

此Regex模式將忽略點本身,從而使您可以替換所需的任何內容而不必記住重新插入點:

Regex.Replace(str, @".*?(?=\.)", "apc");

string.Replace方法看起來更適合此

    string source = "abc.d";
    string target = "apc";
    source = source.Replace(source.Split('.')[0], target);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM