簡體   English   中英

多行文本框到字符串

[英]multiline textbox to string

我有一個多行文本框,希望將其轉換為字符串,發現了這一點

字符串textBoxValue = textBox1.Text.Replace(Environment.NewLine,“ TOKEN”);

但是不了解令牌是什么令牌? 空格還是/ n換行符? 如果答案不正確,請告訴我正確的做法

謝謝

在您提供的代碼段中,“ TOKEN”是您想要插入的任何值,例如HTML <br />標記,更多用於格式化的Environment.NewLine ,或者只是一些稍后將允許您分割文本的隨機定界符在上面。

一個非常簡單的例子:

string text = textBox1.Text.Replace(Environment.NewLine, "^"); // a random token
string[] lines = test.Split( '^' );

如果要處理來自Web上可用文本框的輸入,則還需要考慮XSS(http://en.wikipedia.org/wiki/Cross-site_scripting)。 同樣,在實際情況下,我將分割一個更復雜的令牌,並確保在輸入值中處理多個回車符。

編輯:既然我看到了您的實際需求,此代碼可能會滿足您的要求:

// replace newlines with a single whitespace
string text = textBox1.Text.Replace(Environment.NewLine, " "); 

編輯#2:

此外,我需要將此數據輸入SQLite並重寫他的整個應用程序,該公司不希望將previos應用程序中的信息輸入到新數據庫中,其中包含超鏈接等,因此,如果可以的話,使文本框僅接受RAW數據,這將是最好的。

正則表達式是執行此類操作的方法,除非數據的結構足以加載到XML或HTML DOM和流程中。 您可以使用多種工具構建正則表達式(通過Google搜索免費的在線測試儀,您會發現很多)。 一旦確定了所需的表達式,就可以在C#中使用Regex對象進行匹配,替換等。

http://msdn.microsoft.com/en-us/library/ms228595(VS.80).aspx

http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex.replace(v=VS.100).aspx

就目前而言,“ TOKEN”只是一個無意義的字符串,除非它在代碼中的其他地方? 您可以將“ TOKEN”替換為您喜歡的任何文本。

編輯:

好的,所以您說要從客戶的文本中刪除NewLine。 所以你會這樣做。 將他們的文本粘貼到名為textBox2的文本框中,然后使用以下命令:

textBox2.Text = textBox2.Text.Replace(Environment.NewLine,string.Empty);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM