Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 替换字符串中包含数字的单词_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 替换字符串中包含数字的单词

Ruby on rails 替换字符串中包含数字的单词,ruby-on-rails,ruby,Ruby On Rails,Ruby,t=“带有数字的文本,如58、22、53m2、数字9和foo44bar” 我想把放在如下数字周围: t.gsub(/(\d+)([[:alnum:]]+)/,"<span>\\1\\2</span>") => "Text with numbers such as <span>58</span>, <span>22nd</span>, <span>53m2</span>, number9 and

t=“带有数字的文本,如58、22、53m2、数字9和foo44bar”

我想把
放在如下数字周围:

t.gsub(/(\d+)([[:alnum:]]+)/,"<span>\\1\\2</span>") =>
"Text with numbers such as <span>58</span>, <span>22nd</span>, <span>53m2</span>, number9 and foo<span>44bar</span>"
t.gsub(/(\d+)([[:alnum:]+])/,“\\1\\2”)=>
带有数字的文本,如58、22、53m2、数字9和foo44bar
我唯一的问题是,当这个词不是以数字开头时,比如
number9和“foo44bar
,我也试过了

t.gsub(/([:alnum:]+)(\d+([:alnum:]+)/,“\\1\\2\\3”)

但这也不完全正确

我确信我只是没有看到一些细节,希望能得到一些帮助:)

试试这个:

t.gsub(/([[:alnum:]]*(\d+)[[:alnum:]]*)/, "<span>\\1</span>")
t.gsub(/([:alnum:][]*(\d+[:alnum:][]*)/,“\\1”)