使用Ruby。在http://rubyfiddle.com/riddles/c9c29
中小提琴# code
term = "123 code ruby"
f_term = term.gsub(/\s/, "% %").insert(0, "%").insert(-1, "%")
puts f_term
# output
%123% %code% %ruby%
你如何重构我的f_term
?
答案 0 :(得分:3)
term.gsub(/\b/, '%') # %123% %code% %ruby%
由于这使用了单词边界,因此行为与您的行为略有不同。 /\b/
方法会返回%cats%
作为输入cats
的地方%% %% %cats% %% %%
答案 1 :(得分:2)
假设你真正想做的就是用百分号围住每个单词,你真的不需要用你的弦来做所有这些体操。只需使用String#gsub并替换您的单词边界即可。例如:
term = '123 code ruby'
f_term = term.gsub /\b/, '%'
# => "%123% %code% %ruby%"