我在拆分c#
时遇到问题(textbox0中的文字)
start and dffdfdddddddfd<m>one</m><m>two</m><m>three</m><m>four</m>dbfjnbjvbnvbnjvbnv and end
并且我想在按钮1中单击时在<m>
和</m>
之间提取文本,我需要
输出1 : 一二三四(输出到textbox1)
输出2 : 四个(输出到文本框2)
输出3 : 一个(输出到文本框3)
我该怎么办?
我该怎么做?
请给我 button1_Click的完整代码 please.i我是C#的业余爱好者,所以我需要输出代码
答案 0 :(得分:4)
以下是codez
var items = new List<string>();
foreach (Match match in Regex.Matches(text, "<m>(.*?)</m>"))
items.Add(match.Groups[1].Value);
string output = String.Join(" ", items);
someTextBox.Text = output;
if (items.Any())
anotherTextBox.Text = items[0];
if (items.Count > 2)
whateverTextBox.Text = items[3];
答案 1 :(得分:3)
而是为您编写代码,我想指出正则表达式。看看Using regular expressions。这是解析文本以查找所需位的一种方法。特别是,阅读“群组”。
一旦匹配工作完成,您就可以提取匹配组并将文本解析为您需要的字段。
干杯!
答案 2 :(得分:3)
使用
Regex.Matches(TextString, "<m>(.*?)</m>")
答案 3 :(得分:1)
尝试这样的RegEx:
string source = "start and dffdfdddddddfd<m>one</m><m>two</m><m>three</m><m>four</m>dbfjnbjvbnvbnjvbnv and end";
List<string> destList = new List<string>();
foreach (Match match in Regex.Matches(source, "<m>(.*?)</m>"))
destList.Add(match.Groups[1].Value);
textbox1.Text = String.Join(" ", destList);
textbox2.Text = destList[3];
.....