UltraEdit中怎么选取含有某个特征字段的行数不固定段落

比如我有这样的文本
A1
1111
2222
3333
....(到这里当中的行数不固定)
5555小明 (此行含有特征字段:比如说小明)
6666
7777
A2

------------------------------------------------------
A3
1111
2222
3333
4444
....(到这里当中的行数不固定)
7777小明 (此行含有特征字段:比如说小明)
8888
9999
A4
------------------------------------------------------
A5
1111
2222
3333
4444
....(到这里当中的行数不固定)
7777小王 (此行含有特征字段:比如说小王)
8888
9999
A6
--------------------------------------------------------------
...若干段落....

类似这样的 数据还有很多段,然后我要把含有小明的段落 ,比如从A1行到A2行,A3行到A4行都复制出来(A5~A6中含有的是小王不是需要的就不选取) ,用正则表达式能做吗?好像一次只能匹配一行,无法匹配多行,特别是从A1到含特质字段行当中间隔的行数不是固定的???
我已经先去除每行尾的空格了
就是 以A1开头到 A2结尾 这段含有“小明”这个字符,行数又不固定的文本 正则表达式怎么写??

[正则表达式引擎]选:Perl
如有必要,勾选[匹配大小写]。
可勾选[列出包含字符串的行],这样就可以在搜索后弹出的对话框中一次复制全部匹配项。

^A\d+\s*?$[\s\S]*?小明[\s\S]*?^A\d+\s*?$

◆说明:
^A\d+\s*?$
▲这里假设:
A在行首:^A
A后数字不定长:\d+
A1到行尾间可以有(或没有)空格或其他空白字符:\s*?
▲若情况不符,请进一步说明。

▲在 UltraEdit 中:(Perl)
\s匹配任意空白字符(包括换行符)
\S匹配任意非空白字符

◆提醒:
用 UltraEdit 的正则表达式处理中文等多字节文字,若方法不当,可能导致乱码。
在 UltraEdit 中,用 Unicode 编码处理中文等,才较为安全。

若仍未解决,请“补充说明”或“追问”,我继续帮你。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-08
首先我没遇到类似情况,呵呵,我之所以在这里回答,是因为我觉得你这个问题很奇怪,你所谓的缓存文件在ultraedit中,应该指的是备份和自动备份功能。
可以试一试关闭自动备份,方法嘛,一般如下
【菜单栏】 高级 -> 配置 -> 文件处理 -> 备份
这里选择不备份, 然后可以指定一个备份目录(可以作为错误恢复,比较有用)。
紧接着,把自动备份的时间间隔写成0,然后选择不自动备份,保存,
然后【菜单栏】 高级 -> 导出设置,然后直接确定下,下次的时候,就不会自动保存了
另外说明一下,我使用ultraedit,没有发现缓存功能。可能我的理解有误。呵呵
相似回答