以下适用于Rubular.com
,但在ruby中似乎不匹配:
字符串:
str = "<em>really</em>inexpensive"
目的: 在任何结束标记之后添加一个空格,后面没有任何空格。
正则表达式:
str.gsub("/(<\/[a-zA-Z]+>)(\S)/","\1 \2")
它应该回馈"<em>really</em> inexpensive"
答案 0 :(得分:6)
您应该使用正则表达式文字(/.../
),而不是字符串("..."
)。并转义替换字符串中的\
。 (我在下面的例子中使用了单引号版本的字符串)
str = "<em>really</em>inexpensive"
str.gsub(/(<\/[a-zA-Z]+>)(\S)/, '\1 \2') # '\1 \2' == "\\1 \\2"
# => "<em>really</em> inexpensive"