regex 如何删除loadfile中的分隔字符?

qeeaahzv  于 2023-04-22  发布在  其他
关注(0)|答案(1)|浏览(102)

有没有一种方法可以编写一个正则表达式,从包含48个分隔字符的每一行中删除2个分隔字符“+”?
我试着手动删除它们,但是时间太长了。然后我试了一个有问题的正则表达式:s/(^(?:.*?þ){46}.*?)þþ(.*)/$1$2/g,但它灾难性地失败了。

li9yvcax

li9yvcax1#

你可以使用一个否定字符类来匹配除了þ以外的任何字符,而不是一个非贪婪的点。

^((?:[^þ]*þ){46}).*?þþ(.*)

模式匹配:

  • ^字符串开头
  • (捕获组1
  • (?:[^þ]*þ){46})重复46次匹配字符,但þ后面跟着匹配的þ
  • .*?þþ匹配尽可能少的字符,直到第一次出现þþ
  • (.*)捕获组2,匹配其余行

请参见regex demo

相关问题