我需要匹配一个特定的字符串,中间有一个空格,生成的匹配组应该删除空格。
例如,如果字符串是“Action 50”,则正则表达式应该是匹配组应该匹配字符串“Action 50”,但返回值应该是“Action50”。
正则表达式中是否有任何运算符可以执行此操作?
欢迎任何想法。
我需要匹配一个特定的字符串,中间有一个空格,生成的匹配组应该删除空格。
例如,如果字符串是“Action 50”,则正则表达式应该是匹配组应该匹配字符串“Action 50”,但返回值应该是“Action50”。
正则表达式中是否有任何运算符可以执行此操作?
欢迎任何想法。
我不知道您将哪个软件用于正则表达式,但是:
源正则表达式:"^(.*) (.*)$"
目标正则表达式: "\1\2"
在大多数正则表达式工具中,您可以使用括号将字符串放入内存。
在你可以得到它们之后"\x"
,其中 x 是一个数字。
这将打印您需要的预期结果:
grep -o "search pattern" filename | sed -e 's/ //'
您可以使用两个组来执行此操作,然后将两个组连接起来:
(Action)\s+(\d+)
然后使用第 1 组和第 2 组。
快速 PowerShell 测试:
PS> 'bdfskildhfAction 50sdlfhjsf' -match '(Action)\s+(\d+)'; $Matches[1] + $Matches[2]
True
Action50