(已解决)请问字符串搜索,应该如何实现。
本帖最后由 木头人 于 2015-6-1 11:45 编辑可能我表达的不太清楚,谢谢AFAN,我重新整理一下。
文本内容 A.TXT 如下。
ABCDWER:
1.23
EFGHIDK:
3.21
ABCDWER:
1.23
EFGHIDK:
EFGHIDK: 的内容为静态,1.23的内容为动态,如何获取 1.23的内容?谢了。也就是如何获取EFGHIDK: 上一行的内容?
就是不知道如何先搜索文本内容?
被充问题:如何也获取第二组包含1.23的内容?谢谢 Local $Str = _
'ABCDWER:' & @CRLF & _
'1.23' & @CRLF & _
'EFGHIDK:' & @CRLF & _
'3.21'
Local $s_0 = 'EFGHIDK:'
Local $aSR = StringRegExp($str, '(?mi)^\h*' & $s_0 & '\h*\v+(\V+)', 3)
If Not @Error Then MsgBox(0, '', $aSR)
afan 发表于 2015-5-28 08:45 http://autoitx.com/images/common/back.gif
问题是
ABCDWER:
1.23
EFGHIDK:
3.21
是在 A.TXT 文本里的,而且 3.21 是动态不定数,这个应该怎么做? 本帖最后由 木头人 于 2015-5-28 10:01 编辑
可能我表达的不太清楚,谢谢AFAN,我重新整理一下。
文本内容 A.TXT 如下。
ABCDWER:
1.23
EFGHIDK:
3.21
EFGHIDK: 的内容为静态,1.23的内容为动态,如何获取 1.23的内容?谢了。也就是如何获取EFGHIDK: 上一行的内容?
就是不知道如何先搜索文本内容? 回复 2# afan
AFAN哥,我错了,重新整理了下问题。麻烦再帮忙下。 回复 5# 木头人
你的问题才是动态……之前要下一行,现在变成了上一行?
“就是不知道如何先搜索文本内容?” 什么叫如何先搜索? FileRead('A.txt') ? 回复 6# afan
afan兄,我错了😣是上一行。是不是把上面的赋值变量改成file
read就行?
我错了,是上一行 Local $Str = FileRead('A.txt')
Local $s_0 = 'EFGHIDK:'
Local $aSR = StringRegExp($str, '(?mi)^(\V+)\v+\h*' & $s_0, 1)
If Not @Error Then MsgBox(0, '', $aSR) 就题论题#include <array.au3>
Local $Str = _
'ABCDWER:' & @CRLF & _
'1.23' & @CRLF & _
'EFGHIDK:' & @CRLF & _
'3.21'
Local $aSR = StringRegExp($Str, '(?mi)[\d+\.]+', 3)
If Not @error Then _ArrayDisplay($aSR)
A 大的正则好强大啊 回复 8# afan
解决了,非常感谢,不过,真是看不懂,这些个符号代表什么。。。谢谢了 StringRegExp,filelisttoarray StringRegExp,filelisttoarray 本帖最后由 ila 于 2015-5-28 23:11 编辑
干活用正则快。
从研究的角度来说:
简单些,可以文本读入数组,遍历数组,然后根据固定部分来判断位置,固定部分上一个就是变化内容。
FileReadToArray
读取一个指定文件到一个数组.
#Include <File.au3> 回复 8# afan
文本内容 A.TXT 如下。
ABCDWER:
1.23
EFGHIDK:
3.21
ABCDWER:
1.23
EFGHIDK:
EFGHIDK: 的内容为静态,1.23的内容为动态,如何获取 1.23的内容?谢了。也就是如何获取EFGHIDK: 上一行的内容?
就是不知道如何先搜索文本内容?
被充问题:如何也获取第二组包含1.23的内容?谢谢
页:
[1]
2