从字符串中删除最后n个字符的首选方法是什么?
当前回答
你可以用
"string".sub!(/.{X}$/,'')
其中X是要删除的字符数。
或者赋值/使用结果:
myvar = "string"[0..-X]
其中X是要删除的字符数加1。
其他回答
x = "my_test"
last_char = x.split('').last
如果您正在使用rails,请尝试:
"my_string".last(2) # => "ng"
(编辑)
获取没有最后2个字符的字符串:
n = "my_string".size
"my_string"[0..n-3] # => "my_stri"
注意:最后一个字符串字符是n-1。为了去掉最后2,我们用n-3。
使用正则表达式:
str = 'string'
n = 2 #to remove last n characters
str[/\A.{#{str.size-n}}/] #=> "stri"
你可以用
"string".sub!(/.{X}$/,'')
其中X是要删除的字符数。
或者赋值/使用结果:
myvar = "string"[0..-X]
其中X是要删除的字符数加1。
str = str[0..-1-n]
不像[0…-n],它处理n=0的情况。
推荐文章
- 我应该如何从字符串中删除所有的前导空格?- - - - - -斯威夫特
- 了解Gemfile。锁文件
- 如何确定一个数组是否包含另一个数组的所有元素
- 将整数转换为字符串,以逗号表示千
- 将JavaScript字符串中的多个空格替换为单个空格
- printf()和puts()在C语言中的区别是什么?
- 是什么导致这个ActiveRecord::ReadOnlyRecord错误?
- jQuery -替换字符串中某个字符的所有实例
- Base64长度计算?
- 使用split("|")按管道符号拆分Java字符串
- 最好的打印散列的方法
- Std::cin输入空格?
- Rails:dependent =>:destroy VS:dependent =>:delete_all
- 我可以在不包含Ruby模块的情况下调用实例方法吗?
- 如何将新项目添加到哈希