【已解決!】文本處理,怎樣將一文本中所有所有逗號用分行取代
本帖最后由 wenquan79 于 2010-7-29 14:09 编辑大家好!請教一下,如題。
文本內容如下:
C1,C2,C3,C4,R5,
想變成的效果:
C1
C2
C3
C4
R5 $Str = 'C1,C2,C3,C4,R5,'
$str1 = StringReplace($str, ',', @CRLF)
Msgbox(0, $str, '替换后:' & @CRLF & $str1) 用StringReplace把,替换为@CRLF不就行了么
RE: 文本處理,怎樣將一文本中所有所有逗號用分行取代
感謝大家的回復,用afan兄的提供的代碼可以實現類似的功能,可能開始我沒說得很清楚,再補充說明一下:我在實際使用時,需要直接將TEST.txt 文本中的內容變更成TEST2.txt 的樣子,同時將文本多余的空格及空白段刪除。效果請參考附件。
我寫用下面的代碼試了下實現不了,不知道問題出在什么地方。。
#include<file.au3>
#include<array.au3>
Dim $a
_FileReadToArray("test.txt",$a)
$sa = StringReplace($a, ',', @CRLF)
_FileWriteFromArray("test2.txt",$sa,1) 楼主变通一下即可。$Str = FileRead("test.txt")
$str1 = StringReplace($str, ',', @CRLF)
$str1 = StringReplace($str1, @CRLF&@CRLF,"")
Msgbox(0, $str, '替换后:' & @CRLF & $str1) #include <File.au3>
$d = FileRead("test.txt")
$t = StringRegExp($d,"\b(\w{1,2}\d{1,2})\b",3)
_FileWriteFromArray("test2.txt",$t)勉强能解决.....
今天晚上脑子乱糟糟的 Ziya 兄你好,測試了你提供的代碼,可以實現我想要的功能,可否幫忙將代碼解說一下,感謝!
#include <File.au3>
;將test.txt 內容讀為$d變量。
$d = FileRead("test.txt")
;以下這個StringRegExp的正表達式請幫忙解釋一下。
$t = StringRegExp($d,"\b(\w{1,2}\d{1,2})\b",3)
;將$5變量內容寫入test.txt
_FileWriteFromArray("test2.txt",$t)
另外,再請教一下,將一文本的每行前后都加上逗號的代碼,我自己沒找到相應的命令。 昨天晚上写的那个是用数组了,再加逗号貌似不太好操作
在3mile的代码基础上改一下好了$str = FileRead("test.txt");读取test.txt到$str
$str1 = StringReplace($str, ',', @CRLF);将,替换为回车
$str2 = StringReplace($str1, @CRLF&@CRLF,@CRLF);将双回车的空行替换为单回车
$str3 = StringRegExpReplace($str2,"\b(\w{1,2}\d{1,2})\b",","&"\1"&",");正则替换$str2内容
FileWrite("test2.txt",$str3);将内容写入到test2.txt\b(\w{1,2}\d{1,2})\b
\b = 字符串开头或结尾标记
\w{1,2} = 1个或2个字母或数字或下划线或汉字
\d{1,2} = 1个或2个数字
括号表示将内容捕获为一个分组
\1是调用这个分组的内容
","&"\1"&","表示在分组内容前后加上逗号
RE:【已解決】 文本處理,怎樣將一文本中所有所有逗號用分行取代
回复 9# Ziya感謝Ziya 的熱心回復,問題得到解決,謝謝! 这帖子被合并得乱七八糟了…
页:
[1]