找回密码
 加入
搜索
查看: 3108|回复: 11

[AU3基础] 字符串不定位置空格(数量不定)怎么以空格为界进行分割(已解决)

[复制链接]
发表于 2020-12-12 18:21:00 | 显示全部楼层 |阅读模式
本帖最后由 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[0]
                $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


发表于 2020-12-12 18:32:06 | 显示全部楼层
#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), '其中[0]元素为: ' & $aSRE[0])
_ArrayDisplay($aSRE, UBound($aSRE))
之后也可再按需组织成二维数组

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 1金钱 +10 收起 理由
叶子2019 + 10 请问怎么组织成为二维数组?谢谢了。

查看全部评分

 楼主| 发表于 2020-12-12 18:25:22 | 显示全部楼层

字符串不定位置空格(数量不定)怎么以空格为界进行分割问(已解决)

本帖最后由 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[0]
                $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
发表于 2020-12-12 18:36:59 | 显示全部楼层
afan 发表于 2020-12-12 18:32
之后也可再按需组织成二维数组

A版正则工具出新版了吗
发表于 2020-12-12 18:39:22 | 显示全部楼层
zghwelcome 发表于 2020-12-12 18:36
A版正则工具出新版了吗

木有完成…
 楼主| 发表于 2020-12-12 18:40:16 | 显示全部楼层
相要AU3书。不知道还印不?
发表于 2020-12-12 18:42:13 | 显示全部楼层
得问P版… 估计没戏,没有风~
 楼主| 发表于 2020-12-12 18:43:09 | 显示全部楼层
afan 发表于 2020-12-12 18:32
之后也可再按需组织成二维数组

看效果可以,不过不是这个效果,明天我整理下。应该问题不大。四年没用,不熟了
帮问下哪有AU3书,上下册都要
发表于 2020-12-12 18:46:16 | 显示全部楼层
nbmpe 发表于 2020-12-12 18:43
看效果可以,不过不是这个效果,明天我整理下。应该问题不大。四年没用,不熟了
帮问下哪有AU3书,上下 ...

自己问,我QQ都不上
 楼主| 发表于 2020-12-12 18:49:16 | 显示全部楼层
afan 发表于 2020-12-12 18:32
之后也可再按需组织成二维数组

解决,不会用正则的锅
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-17 16:26 , Processed in 0.087591 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表