2017-10-16 70 views
0

我想仅删除两个单词之间的空格。要在文件[A-Za-z]+(\s[A-Za-z]+)中找到这些单词,此表达式完美无缺。但是现在,我想知道应该用哪个正则表达式替换掉这个空间。从[A-Za-z] +( s [A-Za-z] +)中删除空格

例如。 原文: 桌,两张桌子,椅子

我想要什么: 表,twotables,椅子

+0

是这个节目有关系吗? – user1506104

+0

试试这个:https://stackoverflow.com/questions/26538292/remove-spaces-between-words-of-a-certain-length – cyberrspiritt

+0

@ user1506104需要这个正常使用 –

回答

0

这里有很长的路要走:

  • 按Ctrl + H
  • 找到:(?<=[a-z])\h+(?=[a-z])
  • 替换为:LEAVE EMPTY
  • 取消选中区分大小写
  • 检查线上缠绕
  • 检查正则表达式
  • 更换所有

说明:

(?<=[a-z]) : lookbehind, make sure we have a letter before 
\h+   : 1 or more horizontal spaces (ie. space or tabulation) 
(?=[a-z]) : lookahead, make sure we have a letter after 

结果为给定的例子:

tables, twotables, chair 

编辑:

对于未知的原因,当我们使用它不工作更换,而不是全部替换

我们必须使用:

  • 查找内容:([a-z])\h+([a-z])
  • 替换:$1$2
+0

你的表情找到了我想要的确切空间,但是当我将Replace with:留空时,它只是保持原样而不移除空格。 –

+0

@Rajjat​​Garg:奇怪,它适用于我(版本7.5.1)。你的版本是什么?你检查了正则表达式并点击“全部替换”? – Toto

+0

我正在使用6.3。3 –