我知道这已经回答了很多次,但我想知道是否有人能教我分割字符串(逗号分隔)的最简单方法,即字符串数字= 1,2,3, 4,5,7,8,9,10将逗号分隔字符串转换为多个字符串
这样
1
2
3
4
5
6
7
8
9
10
分裂后,我想插入到数据库中的表为单独的一行(10行)。我想问我怎么会做那么,我是否必须将它们放入10个变量中?只是对字符串的迭代感到困惑!
我知道这已经回答了很多次,但我想知道是否有人能教我分割字符串(逗号分隔)的最简单方法,即字符串数字= 1,2,3, 4,5,7,8,9,10将逗号分隔字符串转换为多个字符串
这样
1
2
3
4
5
6
7
8
9
10
分裂后,我想插入到数据库中的表为单独的一行(10行)。我想问我怎么会做那么,我是否必须将它们放入10个变量中?只是对字符串的迭代感到困惑!
可以使用string.Split(...)
方法把所有结果存储到string array
您Choosen语言的所有包含这些方法
String.split会返回一个字符串数组
我有分解)的字符串作为 昏暗的话(作为字符串= string.Split(“”) 工作'使用For Each循环超过的话,并显示它们 暗淡字作为字符串 对于每个单词的话 的Response.Write(字) 接下来 现在我如何将字符串分割成一个array..but如何将其作为单独的行 – user2502561
而不是印刷在你的循环插入到屏幕数据库 – BlackICE
,你可以通过逗号分隔的字符串到数据库,然后在那里只分裂。如果使用sql,则可以使用以下功能
CREATE FUNCTION dbo.fnSplit(
@sInputList VARCHAR(8000) -- List of delimited items
, @sDelimiter VARCHAR(8000) = ',' -- delimiter that separates items
) RETURNS @List TABLE (item VARCHAR(8000))
BEGIN
DECLARE @sItem VARCHAR(8000)
WHILE CHARINDEX(@sDelimiter,@sInputList,0) <> 0
BEGIN
SELECT
@sItem=RTRIM(LTRIM(SUBSTRING(@sInputList,1,CHARINDEX(@sDelimiter,@sInputList,0)-1))),
@sInputList=RTRIM(LTRIM(SUBSTRING(@sInputList,CHARINDEX(@sDelimiter,@sInputList,0)+LEN(@sDelimiter),LEN(@sInputList))))
IF LEN(@sItem) > 0
INSERT INTO @List SELECT @sItem
END
IF LEN(@sInputList) > 0
INSERT INTO @List SELECT @sInputList -- Put the last item in
RETURN
END
GO
不这样做,如果你可以避免它。 SQL服务器在集合操作上更好,而不是迭代循环 – BlackICE
以下代码根据分隔符分割字符串。您可以将StringSplitOptions设置为忽略空条目或将空条目添加到字符串数组中。
//C#
String sentence = "1,2,3,4,5,6,7,8,9";
String[] delim = {","};
String[] words = sentence.Split(delim,StringSplitOptions.RemoveEmptyEntries);
下面的代码是用C++实现的。它将一行作为用户的输入,并使用strtok根据分隔符拆分字符串。
//C++
string line;
char* word;
getline(cin,line);
word = strtok(const_cast<char*>(line.c_str())," ");
while(word)
{
//input this word in container of your choice
word = strtok(NULL," ");
}
Dim LineOfText As String = "1,2,3,4,5,6,7,8,9,10"
Dim i As Integer
Dim aryTextFile() As String
aryTextFile = LineOfText.Split(",")
For i = 0 To UBound(aryTextFile)
MsgBox(aryTextFile(i))
Next i
我知道它的5个月大,但以防万一你仍然需要回答:
dim stringNumber as string = "1,2,3,4,5,6,7,8,9,10"
Dim stringSpiltArray as string()
If Not stringNumber Is Nothing And stringNumber.Length <> 0 Then
stringSpiltArray = stringNumber.Split(',')
End If
For Each str As String In stringSpiltArray
'insert into db
Next
使用split()
分裂您的字符串和分隔值存储在一个array
。
然后使用for each
循环到数组中的每个项目。
Dim substr As String() = txtString.Text.Split(", ")
For Each strnumber As Integer In substr
txtoutput.Text=strnumber & vbNewLine
Next
哪种语言?您标记3. – Borgleader
我在vb.net – user2502561