0

文字列の特定の部分だけから、たとえばその文字列の最初の200文字から、文字<を削除するにはどうすればよいですか?>これらの文字は、200文字のマークの後に表示された場合は、そのままにしておく必要があります。

4

3 に答える 3

1

非説明的に:

text = "foo < bar > baz" * 20
"#{text[0...200].tr("<>", "")}#{text[200..-1]}"

または、破壊的に:

text = "foo < bar > baz" * 20
text[0...200] = text[0...200].tr("<>", "")
于 2013-01-30T22:01:50.300 に答える
0

<と文字をプレースホルダーに置き換えることを実行するとすると、次の>ように実行できます。

if original_string.length >= 200
  original_string = original_string[0..199].gsub(/</,"&lt;").gsub(/>/,"&gt;") + original_string[200..-1]
else
  original_string = original_string.gsub(/</,"&lt;").gsub(/>/,"&gt;")
end

""置換文字列として使用することもできます。

于 2013-01-30T22:01:34.640 に答える
0
str = "<aaa><bbbbb>ccccccccc<>"
str.prepend(str.slice!(0..10).delete('<>'))

n文字のサブストリングを切り取り、不要な文字を取り除き、接着します。

于 2013-01-30T22:04:39.883 に答える