如何拆分string回车与C#?
我有一个称为txbUserName的多行文本框的ASP.NET页面。 然后我粘贴到文本框3名称,他们是垂直alignment的:
- 贾森
- 书童
- 卡伦
我希望能够以某种方式采取名称,并分裂成不同的string,每当我检测到回车或新行。 我在想,一个数组可能是要走的路。 有任何想法吗?
谢谢。
string[] result = input.Split(new string[] {"\n", "\r\n"}, StringSplitOptions.RemoveEmptyEntries); 这包括\ n和\ r \ n换行符types,并删除您的用户可能input的任何空行。
我testing使用下面的代码:
  string test = "PersonA\nPersonB\r\nPersonC\n"; string[] result = test.Split(new string[] {"\n", "\r\n"}, StringSplitOptions.RemoveEmptyEntries); foreach (string s in result) Console.WriteLine(s); 
它能正常工作,分成三个string数组“PersonA”,“PersonB”和“PersonC”。
 用\r\nreplace\r\n ,然后用\n分割: 
 string[] arr = txbUserName.Text.Replace("\r\n", "\n").Split("\n".ToCharArray()); 
看看String.Split函数(不确定的语法,没有IDE在我面前)。
 string[] names = txbUserName.Text.Split(Environment.Newline); 
 using System.Text; using System.Text.RegularExpressions; protected void btnAction_Click(object sender, EventArgs e) { string value = txtDetails.Text; char[] delimiter = new char[] { ';','[' }; string[] parts = value.Split(delimiter, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < parts.Length; i++) { txtFName.Text = parts[0].ToString(); txtLName.Text = parts[1].ToString(); txtAge.Text = parts[2].ToString(); txtDob.Text = parts[3].ToString(); } } 
  String.Split ? 
 mystring.Split(new Char[] { '\n' }) 
尝试这个:
 message.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries); 
如果符合
 var message = "test 1\r\ntest 2"; 
要么
 var message = "test 1\ntest 2"; 
要么
 var message = "test 1\rtest 2";