将字符串转换为所需格式/删除句子中间的句点

时间:2019-12-03 16:07:23

标签: regex notepad++

具有此文本序列,我们如何使它看起来像所需的输出。

AAAAAAA ................................................ 28.02%
AAAAA-BBBBB, AB ........................................ 16.50%
AAAAAAA ................................................ 28.02%
AAAAA-BCCCC, AB ........................................ 16.50%
CCCCCCC ................................................ 28.02%
AAAAA-DDDDD, AB ........................................ 16.50%
FFFFFFF ................................................ 28.02%
AAAAA-BBBBB, AB ........................................ 16.50%

尝试采用这种格式-

AAAAAAA | 28.02%
AAAAA-BBBBB, AB | 16.50%
AAAAAAA | 28.02%
AAAAA-BBBBB, AB |16.50%
AAAAAAA | 28.02%
AAAAA-BBBBB, AB | 16.50%

使用管道定界符,这样我就可以将其加载到DB中(因为我不能使用逗号,所以它们在字符串的第一部分中)。

到目前为止,我已经尝试过此方法-没有太大的成功,我们将不胜感激。使用Notepad ++处理正则表达式。

\.(?!$)
replace with blank

4 个答案:

答案 0 :(得分:2)

您可以简单地匹配点(至少2 ,否则浮点值内的点也将匹配,此处不需要),并用竖线|字符替换

匹配:\.{2,}

替换:|

正则演示: https://regex101.com/r/HxVFbl/1

答案 1 :(得分:1)

尝试查找:([^.]+) \.+ (.+)

,并替换为:$1 | $2

说明

查找:([^.]+) \.+ (.+)

  • ([^.]+)-捕获组(#1)中不是点'.'的所有内容
  • \.+-空格,一个或多个点...,空格
  • (.+)-只是另一个捕获组(#2)中其余的字符串

替换:$1 | $2

  • $1-捕获组#1的内容
  • |-空间,管道,空间
  • $2-捕获组#2的内容

答案 2 :(得分:1)

不要惊慌,它可以超级容易地完成,只需首先忘记所有复杂的答案即可。只需选择一个或多个带有空格的点,然后就可以了。

(\.+ )

然后用竖线和空格字符(|)替换

演示:https://regex101.com/r/yoxb9U/3

答案 3 :(得分:0)

您可以使用下面的正则表达式

匹配:[.]+

替换:|