在正则表达式中匹配时删除一个字符

时间:2012-07-26 08:51:00

标签: regex

我需要将特定字符串与中间的空格匹配,并且生成的匹配组应该删除空格。

例如, 如果字符串是“Action 50”,则正则表达式应该使匹配组匹配字符串“Action 50”,但返回的值应为“Action50”。

regex中是否有任何操作符可以执行此操作?

欢迎任何想法。

3 个答案:

答案 0 :(得分:1)


我不知道你用哪个软件用于正则表达式,但是:

来源Regex:"^(.*) (.*)$"
Dest Regex:"\1\2"

在大多数正则表达式工具中,您可以在内存中使用括号表示字符串 您可以使用"\x"获取它们,其中x是数字。

答案 1 :(得分:0)

这将打印您需要的预期结果:

grep -o "search pattern" filename | sed -e 's/ //'

答案 2 :(得分:0)

您可以使用两个组执行此操作,然后连接两个组:

(Action)\s+(\d+)

然后使用第1组和第2组。

快速PowerShell测试:

PS> 'bdfskildhfAction 50sdlfhjsf' -match '(Action)\s+(\d+)'; $Matches[1] + $Matches[2]
True
Action50