向大家请教一个有关正则的问题。

第四百六十三条
【条文主旨】17
本条是关于合同编调整对象的规定。
第四百六十四条
【条文主旨】23
本条是关于合同的概念及适用的规定。

第四百六十三条
【本条是关于合同编调整对象的规定。】17
第四百六十四条
【本条是关于合同的概念及适用的规定。】23

在需要对文本进行批量操作的时候,我一般喜欢用Word查找替换,但是面对上面这种,需要对有一定规律,但是具体内容又不相同的文本进行操作,使其移动、复制到特定位置时,我就毫无办法了,我知道正则表达式应该可以做到,但是不知道具体如何做,这些年经常遇到类似问题,望各位指教。

关于正则表达式 可以了解这篇文章https://deerchao.cn/tutorials/regex/regex.htm
如果时间有限可以主要记住 .*? 匹配所有字符,字母匹配对应的字母即可

你要达到的效果有个规律:【条文主旨】+页码数字+换行符+要保留的一行信息

需要知道怎么匹配换行符、首先实现匹配这两行,然后通过分组group来重新组合上述各部分、批量替换。

仅仅提示一下,具体需要你自己摸索掌握正则表达式这个强大工具

^本条.*规定$
请问我用上面这个为什么查找不到任何东西啊?

文本规定和行尾之间还有个句号。

电脑非常机械,需要细心。

推荐 https://regex101.com
支持即时更新测试,右边还有详细解释

就说这些了,自个儿摸索才能掌握

从notepad++换成了emeditor,好多了。

查找:【条文主旨】(\d{1,4})\n(本条.*的规定。)
替换:【\2】\1
奋斗两个小时,勉强算是成功了。
感谢上面两位热心网友。

1 Like

你沒看答案嗎?

发现了,已修改。

这样的帖子应该顶

有了第一次,第二第三次就不难了,

正则是越用越熟练,如果是依赖别人直接给答案是掌握不好的

给楼主介绍一个神器,你把这个学会了,别说解析你这么简单的数据,就是要解析像Python这样的编程语言也易如反掌。不过目前这个项目文档虽然丰富,但是不是tutorial,更像是reference。想要学会需要下点功夫,但是一旦学会,以后处理文本那真是不能再容易了!
https://www.nongnu.org/txr/

那個貌似是 lisp 語言…,似乎難度有點高吧
TXR is a fusion of many different ideas, a few of which are original, and it is influenced by many languages, such as Common Lisp, Scheme, Awk, M4, POSIX Shell, Prolog, Ruby, Python, Arc, Clojure, S-Lang and others.

TXR consists of two languages, which can be used separately or tangled together: the TXR Pattern Language, and TXR Lisp.

還有 S-Lang 這都統計語言類似 R 了

若沒記錯 Lisp , Prolog,應該是都屬上上世代的語言