0

你好,再次对不起

我需要一个正则表达式来删除字符空间(“”)。如果其他空格字符没有跟在这个字符后面。

Example String

"This  is  a  ex am ple" 

Result 

"This  is  a  example"

我正在尝试这个正则表达式:

string.gsub(/\s{1}/,"")

我还认为在子匹配中替换因为我不知道在 ruby​​ 中使用它

string.gsub(/(\w)( )(\w)/,/\1\3/)

但是抛出异常。

提前致谢

4

4 回答 4

4

试试这个:

print "This  is  a  ex am ple".gsub(/(?<=\w)\s(?=\w)/, '')

输出:

This  is  a  example
于 2012-08-02T15:23:59.497 回答
1

您在第二个 gsub 中有小错误。试试这个:

string.gsub(/(\w)( )(\w)/, '\1\3')

我在你的例子中检查了这个,它对我有用。

于 2012-08-02T15:23:32.187 回答
0

试试这个 reg 表达式:

string.gsub(/(?<!\s)\s(?!\s)/, '');

输入:

"This     is    a  ex am ple"

输出:

"This     is    a  example"
于 2012-08-02T15:18:32.160 回答
0
string.gsub( /(\w) (\w)/, '\1\2' )

你想在一开始的空间发生什么?

于 2012-08-02T15:23:03.540 回答