我有一个HTML Textarea,我希望将它转换为单行字符串,并以分号作为分隔符。
例如,我在HTML Textarea中有一个员工编号列表:
-------------
|100000001 |
|100000002 |
|100000003 |
|100000004 |
|100000005 |
|100000006 |
|100000007 |
|100000008 |
|100000009 |
|100000010 |
-------------
我希望将它转换为单行字符串并用分号替换新行并将其传递给变量。
应该是这样的:
;100000001;100000002;100000003;100000004;100000005;100000006;100000007;100000008;100000009;100000010
我怎样才能做到这一点?
或者您还有其他建议使用的内容而不是HTML Textarea,用户可以在其中输入员工编号列表并允许从剪贴板粘贴值。
非常感谢任何建议。提前谢谢。
答案 0 :(得分:1)
如果你想在sql server中那么
select convert(varchar,EmployeeNumber)+';' from EmployeesTable for xml path('')
如果您尝试使用c#,那么
txtMyTextBox.Text = string.Join(";", txtMyTextBox.Text.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries));
答案 1 :(得分:1)
您可以在C#中执行此操作:
var result = yourText.Replace("\r\n", ";").Replace("\r", ";").Replace("\n", ";");
答案 2 :(得分:0)
如果你需要在SQL本身生成这个,那么你可以在SUBSTRING
和LEN
函数的帮助下这样做。
Create table sample(
data varchar(max)
)
insert into sample
values(10000010),
(10000020),
(10000030),
(10000040),
(10000050),
(10000060),
(10000070),
(10000080)
declare @temp varchar(max)
declare @temp2 varchar(max)
set @temp = ''
select @temp = @temp + data + '; ' from sample
select SUBSTRING(@temp,0,LEN(@temp))