把数据他分割为三段,分割不出来
本帖最后由 5735988 于 2026-1-21 19:52 编辑#include <Array.au3>
; Local $str = "语文251/231/354/555/037/345/114张三"
; Local $str = "体育251/231/354/555/037/345/114张2三"
; 上面这2个也会出现
Local $str = "数学251/555/037/345/114李明"
Dim$Str2 ,$Zu_Liu
$str = StringReplace($str, ".\d{3}", " \d{3} ");整理三个号码的
$array = StringRegExp($str, "(?<!\d)\d{3}(?!\d)", 3);作用是替换掉/为空格
For $i = 0 To UBound($array) - 1
;~ MsgBox(4096, "转换完毕:", $array[$i], 1)
If $array = "NotFound" Then
Else
$Str2 &= $array[$i] & " "
EndIf
Next
$Zu_Liu = StringSplit($str, $Str2, 2)
_ArrayDisplay($Zu_Liu)
想要的结果:251 555 037 345 114 数学李明
思路,我想把他分割为三段,【1】 【2】【3】 就可以调换位置了,没想到好办法。
本帖最后由 3131210 于 2026-1-22 14:26 编辑
Local $sSource = _
'语文251/231/354/555/037/345/114张三' & @CRLF & _
'体育251/231/354/555/037/345/114张2三' & @CRLF & _
'数学251/555/037/345/114李明'
;~ MsgBox(0, '源字符串', $sSource)
Local $sSRERe = StringRegExpReplace($sSource, '(?m)^(.+?)([\d\/]+)(.+)$', '\2 \1\3')
MsgBox(0, '替换结果', $sSRERe)
页:
[1]