【发布时间】:2017-08-09 21:34:32
【问题描述】:
我有一个字符串,在"-" 的任一侧只包含一个数字,例如:
"1-3"
我想得到类似的结果
"01-03"
如果字符串在破折号的一侧有两个数字,例如:
"1-10"
那么我不想做任何替换。我可以做一个gsub 表达式,比如
str.gsub!(/(^|[^\d]])\d[[:space:]]*\-[[:space:]]*\d([^\d]|$)/, '\1')
但如果有多个(例如两个)要替换的东西,我不清楚该怎么做。
【问题讨论】:
-
@WiktorStribiżew 不要忘记破折号。否则看起来不错,应该作为答案发布。
标签: ruby regex gsub substitution