获取子字符串c#的特定单词后面的文本
本文关键字:单词 文本 字符串 获取 | 更新日期: 2023-09-27 18:24:06
我有以下值:
<H2:H2LabelComboBoxCell ID="LabelComboboxCellProject" SecurityID="CD4D3959-0ADB-4375-8DCF-917157528BDE" MaxLength=100/>
<H2:H2LabelFileListCell ID="LabelFileListCellApplicationAttachched" ColumnSpan="1" DataSource="ClientFileH2BindingSource" />
<H2:H2LabelTextBoxCell LabelText="Budget (€)" ColumnSpan="1" ID="LabelTextboxCellBudget" />
<H2W:H2CheckBoxList ID= "H2CheckBoxListReasonForRejection" DataIsDefaultMember="IsDefault" runat="server" />
我需要得到每一行中ID的值。
我想使用子字符串如下:
string line= @"<H2:H2LabelComboBoxCell ID="LabelComboboxCellProject" SecurityID="CD4D3959-0ADB-4375-8DCF-917157528BDE"/>"
string id= line.Substring(line.IndexOf("ID="),xyz);
我如何获得ID的值(我可以用于xyz的值)
编辑:我用XmlDocument
作为Foolows:尝试了这个
string text= " <H2H2LabelTextBoxCell ID="H2LabelTextBoxCell1" runat="server" TextSize=400 PlaceHolder="" LabelText="Translate into" Token="Translation_Into_For_Language_management_Initial" DataSource="SelectedTokensForStaticListTypeBindingSource2" DataMember="Value" Disabled="False" SecurityID="755C974E-211A-4832-B5E2-F3765194E6BC"></H2H2LabelTextBoxCell> "
XmlDocument doc = new XmlDocument();
doc.LoadXml(text);
这引发以下异常:"400"是意外的令牌。所需的标记为"或"。第1行,位置72。
由于格式问题,我移回正常的行读取选项。
如果您不想做整个XML的事情。
private static int Main(string[] args)
{
string line= "<H2:H2LabelComboBoxCell ID='"LabelComboboxCellProject'" SecurityID='"CD4D3959-0ADB-4375-8DCF-917157528BDE'"/>";
string stringToFind = "ID='"";
int firstQuote = line.IndexOf(stringToFind) + stringToFind.Length;
int nextQuote = line.IndexOf("'"",firstQuote);
string id= line.Substring(firstQuote,nextQuote-firstQuote);
System.Console.Write("id="+id);
return 0;
}
关于:
int start, end;
start = line.IndexOf("ID='"") + ("ID='"").Length;
end = line.IndexOf("'"", start);
string id= line.Substring(start,end-start);
您也可以使用Split()。