我想转换这样的东西:
bitte
----------
dream
----------
----------
HD
----------
ready
----------
这样的东西:
bitte:dream
HD:ready
使用正则表达式。什么正则表达式使用?如何将所有这些行放在一起?
答案 0 :(得分:2)
您可以使用像
这样的正则表达式^(?:---+\R\s*)*(\w.*)\R---+\R(?:\h*\R)*(\w.*)\R---+$
并替换为$1:$2
。
^
匹配行开头,(?:---+\R\s*)*
匹配第一个非空行之前的可选分隔符行,(\w.*)
是第1组捕获字char,后跟0 +以外的字符换行符\R---+\R
匹配换行符后跟3个连字符和换行符,(?:\h*\R)*
匹配n个空行,(\w.*)
(见上文)和\R---+$
匹配a换行符和行尾的3+个连字符。
答案 1 :(得分:0)
找到:\W*(\w+.*)[\r\n]+\-{5,}\s+(\w+.*[\r\n]+)\-{5,}\W*
替换为:$1:$2
假设它总是超过5个破折号。
第二个单词之后的换行符已经在第二个捕获组中。