重新排列字符串中的文本
本文关键字:字符串 文本 排列 新排列 | 更新日期: 2023-09-27 18:07:58
我有一个包含客户信息的文本,该信息以不同的格式出现,我想重新排列客户信息,以便在解析之前所有信息看起来都相同。
客户信息格式1:
ID: 1
Name: A
Last name: B
客户信息格式2:
ID:
1
Name:
A
Last name:
B
有没有办法让我重新排列这些信息,使它们看起来都像例子1?
看起来你可能只是需要:
text = text.Replace(": 'r'n", ": ");
这将适用于您给出的示例,可能已将"'r'n"更改为"'n"取决于确切的格式。
这比简单替换":'r'n"要灵活一些,但它不可能是完美的
Regex.Replace(input,@"(:'s*)'n([^:]*$)","$1$2",RegexOptions.Multiline);
查找后跟0个或多个空白字符的:
,然后是换行符,然后是不包含冒号的行,并在本例中删除换行符。与Jon的答案相比,唯一的优点是它可以使用空值,例如:
ID:
1
Name:
A
Middle Name:
Last name:
B
是
ID: 1
Name: A
Middle Name:
Last name: B
如果这是一个要求,这是可以的,但如果不是更复杂!
为任何类型的格式编写单个泛型代码都是很困难的。
然而,你可以用一个方法写一个接口,比如Format(…),并为每种格式类型创建一个类,然后相应地实例化类的对象。