我有一個字符串,我想要獲取特定部分。如何檢索字符串的某個部分
字符串始終處於格式:
名姓,(位置)
我希望能夠得到公正的字符串姓氏部分(第一空間後和前逗號)
字符串的姓氏部分將永遠是不同的,但名字可以是相同的
如何將我去這樣做
我有一個字符串,我想要獲取特定部分。如何檢索字符串的某個部分
字符串始終處於格式:
名姓,(位置)
我希望能夠得到公正的字符串姓氏部分(第一空間後和前逗號)
字符串的姓氏部分將永遠是不同的,但名字可以是相同的
如何將我去這樣做
如果字符串是總是在格式名姓,(當前位置),則可以使用String.Split
基於空間分割字符串轉換成3個元素,並且String.Replace
方法以除去逗號從名字:
string input = "John Doe, (Manager)";
string lastName = input.Split(' ')[1].Replace(",", "");
上述分割字符串上「」,返回字符串的數組(元素0是約翰,元件1是DOE,和元件2(經理))。接下來選擇第二個元素([1]),然後使用String.Replace
刪除逗號。
輸出應該是「Doe」。
非常感謝Tim的工作。 – NattyMan0007
不客氣。只要記住,如果字符串格式不正確,就會遇到問題。快樂編碼:) – Tim
嗯,基本上你不能做安全。您可以使用String.Split方法使用逗號(,)作爲分隔符將全名和位置分隔到一個字符串數組中,但是當涉及到拆分名和姓時,它看起來像只能通過使用空格作爲分隔符,同時提出了一些問題。如果有中間名會發生什麼?
實例
string[] fullNameAndPosition = str.Split(',');
string position = fullNameAndPosition[1];
string[] fullName = fullNameAndPosition.Split(' ');
string fname = fullName[0];
string lname = fullName[1];
更簡單的方法:
var test = "FirstName LastName, (Position)";
var t = test.Split(new[] { ' ', ',' })[1];
我編輯了自己的冠軍。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –
好的不用擔心,這個問題已經回答了,雖然 – NattyMan0007