字符串不定位置空格(数量不定)怎么以空格为界进行分割(已解决)
本帖最后由 nbmpe 于 2020-12-12 18:50 编辑字符串不定位置空格(数量不定)怎么以空格为界进行分割
如下,字符串中有不定位置空格,空格数量不定,怎么以每个位置的空格为分界,分割字符串
#include <File.au3>
#include <array.au3>
Local $aRecords
If Not _FileReadToArray("E:\股\历史1\" & "603927.txt", $aRecords) Then
MsgBox(4096, "Error", " Error reading log to Array error:" & @error)
Exit
Else
For $x = 2 To $aRecords
$cde = $aRecords[$x]
$file_array = StringSplit($cde, " ",2)
;下面这段for next这段没成功。
For $i = 1 To UBound($file_array) - 1
$temp = $file_array[$i]
MsgBox(4096, 'Record:' & $x, $temp)
#cs
If Not IsDeclared($temp) Then
Assign($temp, $i)
If $temp <> "" Then $str &= $temp & @CRLF
EndIf
#ce
IniWrite(@DesktopDir & "\1.txt", $x, "1", $temp)
Next
Next
EndIf
字符串如下:
时间 开盘 最高 最低 收盘 涨幅 振幅 总手 金额 换手% 成交次数
2019-09-09,一 19.42 23.30 19.42 23.30 +44.00% 23.98% 39,354 916,560 0.093 59
2019-09-10,二 25.63 25.63 25.63 25.63 +10.00% 0.00% 10,828 277,522 0.026 17
2019-09-11,三 28.19 28.19 28.19 28.19 +9.99% 0.00% 16,191 456,424 0.038 23
2019-09-12,四 31.01 31.01 31.01 31.01 +10.00% 0.00% 32,400 1,004,724 0.076 53
2019-09-16,一 34.11 34.11 34.11 34.11 +10.00% 0.00% 85,991 2,933,153 0.203 149
#include <Array.au3>
Local $sSource = _
'时间 开盘 最高 最低 收盘 涨幅 振幅 总手 金额 换手% 成交次数 ' & @CRLF & @CRLF & _
'2019-09-09,一 19.42 23.30 19.42 23.30 +44.00% 23.98% 39,354 916,560 0.093 59 ' & @CRLF & @CRLF & _
'2019-09-10,二 25.63 25.63 25.63 25.63 +10.00% 0.00% 10,828 277,522 0.026 17 ' & @CRLF & @CRLF & _
'2019-09-11,三 28.19 28.19 28.19 28.19 +9.99% 0.00% 16,191 456,424 0.038 23 ' & @CRLF & @CRLF & _
'2019-09-12,四 31.01 31.01 31.01 31.01 +10.00% 0.00% 32,400 1,004,724 0.076 53 ' & @CRLF & @CRLF & _
'2019-09-16,一 34.11 34.11 34.11 34.11 +10.00% 0.00% 85,991 2,933,153 0.203 149'
;~ MsgBox(0, '源字符串', $sSource)
Local $aSRE = StringRegExp($sSource, '\S+', 3)
If Not @Error Then MsgBox(0, '匹配数量: ' & UBound($aSRE), '其中元素为: ' & $aSRE)
_ArrayDisplay($aSRE, UBound($aSRE))
之后也可再按需组织成二维数组
字符串不定位置空格(数量不定)怎么以空格为界进行分割问(已解决)
本帖最后由 nbmpe 于 2020-12-12 18:50 编辑字符串不定位置空格(数量不定)怎么以空格为界进行分割
如下,字符串中有不定位置空格,空格数量不定,怎么以每个位置的空格为分界,分割字符串
#include <File.au3>
#include <array.au3>
Local $aRecords
If Not _FileReadToArray("E:\股\历史1\" & "603927.txt", $aRecords) Then
MsgBox(4096, "Error", " Error reading log to Array error:" & @error)
Exit
Else
For $x = 2 To $aRecords
$cde = $aRecords[$x]
$file_array = StringSplit($cde, " ",2)
;下面这段for next这段没成功。
For $i = 1 To UBound($file_array) - 1
$temp = $file_array[$i]
MsgBox(4096, 'Record:' & $x, $temp)
#cs
If Not IsDeclared($temp) Then
Assign($temp, $i)
If $temp <> "" Then $str &= $temp & @CRLF
EndIf
#ce
IniWrite(@DesktopDir & "\1.txt", $x, "1", $temp)
Next
Next
EndIf
下面为TXT原文件,字符串 是一行 如下:
时间 开盘 最高 最低 收盘 涨幅 振幅 总手 金额 换手% 成交次数
2019-09-09,一 19.42 23.30 19.42 23.30 +44.00% 23.98% 39,354 916,560 0.093 59
2019-09-10,二 25.63 25.63 25.63 25.63 +10.00% 0.00% 10,828 277,522 0.026 17
2019-09-11,三 28.19 28.19 28.19 28.19 +9.99% 0.00% 16,191 456,424 0.038 23
2019-09-12,四 31.01 31.01 31.01 31.01 +10.00% 0.00% 32,400 1,004,724 0.076 53
2019-09-16,一 34.11 34.11 34.11 34.11 +10.00% 0.00% 85,991 2,933,153 0.203 149
afan 发表于 2020-12-12 18:32
之后也可再按需组织成二维数组
A版正则工具出新版了吗 zghwelcome 发表于 2020-12-12 18:36
A版正则工具出新版了吗
木有完成… :face (32): 相要AU3书。不知道还印不? 得问P版… 估计没戏,没有风~ afan 发表于 2020-12-12 18:32
之后也可再按需组织成二维数组
看效果可以,不过不是这个效果,明天我整理下。应该问题不大。四年没用,不熟了
帮问下哪有AU3书,上下册都要 nbmpe 发表于 2020-12-12 18:43
看效果可以,不过不是这个效果,明天我整理下。应该问题不大。四年没用,不熟了
帮问下哪有AU3书,上下 ...
自己问,我QQ都不上 afan 发表于 2020-12-12 18:32
之后也可再按需组织成二维数组
解决,不会用正则的锅 已解决!感谢afan 学习,学习,
页:
[1]