我想从一个字符串中拾取三个字符串,例如Vks - Vks * Son
txtName.Text = objDoctor.DocName.Substring(0, objDoctor.DocName.IndexOf("-")).Trim();
我已经成功获得了第一部分
txtMidName.Text = objDoctor.DocName.Substring(1, objDoctor.DocName.IndexOf("-")).Trim();
txtLastName.Text = objDoctor.DocName.Substring(0,objDoctor.DocName.LastIndexOf("*")).Trim();
注意:第二部分是
Vks - Vks * Son
的MidName和3rd部分,即Son是姓氏请检查一下:
Name = Name.Trim();
arrNames = Name.Split(' ', '-' , '*');
if (arrNames.Length > 0) {
GivenName = arrNames[0];
}
if (arrNames.Length > 1) {
FamilyName = arrNames[arrNames.Length - 1];
}
if (arrNames.Length > 2) {
MiddleName = string.Join(" ", arrNames, 1, arrNames.Length - 2);
}
真的会帮助某人
最佳答案
只需使用string.Split
:
var parts = objDoctor.DocName.Split('-', '*');
txtName.Text = parts[0];
txtMidName.Text = parts[1];
txtLastName.Text = parts[2];
请注意,如果字符串不包含至少三部分,则将引发异常。