标签: gsub

从字符串rails 2 ruby​​ 1.9.2中删除单引号和双引号+空格

我有上传图像的功能,如果图像名称有任何单引号或双引号或空格,那么我有错误上传到亚马逊

那么如何从图像名称中删除野生字符和空格?

抱歉,
我需要添加%20来代替空格

请帮我.

ruby string ruby-on-rails gsub

0
推荐指数
1
解决办法
6003
查看次数

为什么R中的gsub函数不能用于'.' 运营商?

我有一个名为myfile的数组,其中包含字符格式的所有日期.例如 - "2014.01.29""2014.02.02""2014.01.09""2014.01.23""2014.01.09""2014.01.29"

现在,我想替换这个'.' 运算符' - '.所以我希望"2014.01.29"像"2014-01-29".当我使用代码

 gsub('.' ,  '-' ,  myfile[1])
Run Code Online (Sandbox Code Playgroud)

我得到输出'----------'.当我替换'.'时,该命令绝对正常.在gsub与其他任何东西.任何帮助,将不胜感激.

r gsub

0
推荐指数
1
解决办法
1285
查看次数

gsub不会在gawk中正确替换字符

这是我的代码片段:

gsub(/'/, "'", name)
gsub(/</, "&lt;", name)
gsub(/>/, "&gt;", name)
gsub(/&/, "&amp;", name)
Run Code Online (Sandbox Code Playgroud)

我想,以取代4个字符:"<>&,但它不工作我喜欢的方式,例如:我想更换<&lt;和它给了我这样的:<lt;

这有什么解决方案吗?

awk gawk gsub

0
推荐指数
1
解决办法
300
查看次数

Ruby:子匹配组在不应该的时候是零

我正在尝试获取信用卡号码字符串并用星号掩盖中间数字.我使用正则表达式/^([\d]{6})([\d]{3,6})([\d]{4})$/匹配三组:

  • 前6位数
  • 中间数字(3到6)将被混淆
  • 最后4位数

正如您在下面的控制台中看到的那样,首先gsub是匹配组nil,直到我在替换属性中使用文字字符串.然后,当我尝试运行初始调用时,它可以工作.

2.0.0-p598 :001 > c = "5454545454545454"
 => "5454545454545454"

2.0.0-p598 :002 > c.gsub(/^([\d]{6})([\d]{3,6})([\d]{4})$/, $1 + '*' * $2.size + $3)
NoMethodError: undefined method `size' for nil:NilClass
    from (irb):2
    from /Users/guilherme/.rvm/rubies/ruby-2.0.0-p598/bin/irb:12:in `<main>'

2.0.0-p598 :003 > c.gsub(/^([\d]{6})([\d]{3,6})([\d]{4})$/, "anything")
 => "anything"

2.0.0-p598 :004 > c.gsub(/^([\d]{6})([\d]{3,6})([\d]{4})$/, $1 + '*' * $2.size + $3)
 => "545454******5454"
Run Code Online (Sandbox Code Playgroud)

为什么会这样?这是一个错误吗?如何解决这个问题并使其在第一次尝试中起作用?

ruby regex gsub

0
推荐指数
1
解决办法
278
查看次数

如果单元格包含某个字符,则替换r中的整个单元格

我在数据框中有几个单元格,后面跟一个星号.我想用*和NA替换单元格中的数据.这是样本数据

a<-c(1.23,"4.2*", 5,6,"8*")
b<-c(0.01,0.5,"3.687*",9,10)
c<-data.frame(a,b)
c
Run Code Online (Sandbox Code Playgroud)

我试过c [c =="*"] < - NA,但只替换只包含*的单元格

replace r gsub

0
推荐指数
1
解决办法
1782
查看次数

用awk替换双引号双引号

我正在用awk编写一个脚本,用文件夹中所有文件的双重双引号替换所有双引号.

我在stackoverflow中发现了这个,但我得到了其他结果

awk 'BEGIN{FS=OFS="#"} {for (i=0;i<=NF;i++) gsub(/"/, "&&",$i)} 1 $f3 > $f2
Run Code Online (Sandbox Code Playgroud)

此示例示例的输出:

01##"hello world"98##
Run Code Online (Sandbox Code Playgroud)

01##""""hello world""""98##
Run Code Online (Sandbox Code Playgroud)

我想得到

01##""hello world""98##
Run Code Online (Sandbox Code Playgroud)

linux bash awk substring gsub

0
推荐指数
1
解决办法
484
查看次数

如何删除R中字符串末尾的双空格?

我正在尝试修复一些小问题。我感兴趣的列包含在开头或结尾处带有空格和双倍空格的字符串。

我问之前看过这些帖子

这是我正在做的可复制示例

library(dplyr)

mtcars2 = tbl_df(mtcars) %>% 
   mutate(name = rownames(mtcars)) %>%
   mutate(name = gsub("^ *|(?<= ) | *$", "", name, perl = TRUE)) %>%  
   mutate(name = gsub("^\\s+|\\s+$", "", name)) %>%
   mutate(name = iconv(name, from = "", to = "ASCII//TRANSLIT", sub = ""))

head(mtcars2, 3)
Run Code Online (Sandbox Code Playgroud)

结果是

# A tibble: 3 × 12
    mpg   cyl  disp    hp  drat    wt  qsec    vs    am  gear  carb          name
  <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>         <chr> …
Run Code Online (Sandbox Code Playgroud)

string r gsub dplyr

0
推荐指数
1
解决办法
965
查看次数

模式(g)sub =列中的字符串(R)

我现在正在寻找很长一段时间,但我无法弄清楚如何替换字符串的实体,其中模式是列中的字符串,并且每行都不同.所以我有这些数据:

         var1                         var2                var3
"Sentence 1 is exiting, isnt it?"  "exiting"         
"Sentence 2 is boring, isnt it?"   "boring"
Run Code Online (Sandbox Code Playgroud)

我最终想要这个:

         var1                        var2                   var3
"Sentence 1 is exiting, isnt it?"  "exiting"         "Sentence 1 is, isnt it?"
"Sentence 2 is boring, isnt it?"   "boring"          "Sentence 2 is, isnt it?"
Run Code Online (Sandbox Code Playgroud)

因此,在每一行中都有另一种需要替换的模式.如果我做var3 = gsub(var2,"",var1)我得到一个错误,因为var2不是一个表达式.

谁能帮我?

string r gsub dataframe

0
推荐指数
1
解决办法
157
查看次数

将" - "与R中的文本分开

我试图删除" - "之后的所有文本,包括" - ",如"Albany-Schenectady,Allentown-Bethlehem"等.

我尝试使用Gsub,但无法让代码工作.

#What I tried to make work
gsub("(.*)-.*", "\\1",  
Run Code Online (Sandbox Code Playgroud)

r gsub

0
推荐指数
1
解决办法
55
查看次数

在Ruby字符串中转义',而不是为了插入MySQL而转义\

我有一个Ruby形式的字符串: "Henry's string"

每一个gsubtr我试着让我形成像"Henry\\'s string","Henry\\\\'s string"等等.

这些都是逃避反斜杠,但留给我一个未转义的单引号.

我试过了:

  • "Henry's string".gsub("'","\\\\'") 有不同数量的\

  • "Henry's string".gsub(/'/) {|x| "\\\\#{x}"} 再次以不同的数量

  • "Henry's string".gsub(/'/) {|x| "\\#{x}"}.gsub(/\\/) {|x| "#{x}"}

我想我需要一个奇数\来完全逃脱'(为了加载到MySQL),但我无法弄清楚如何得到这个.

ruby mysql escaping gsub single-quotes

0
推荐指数
1
解决办法
104
查看次数

标签 统计

gsub ×10

r ×5

ruby ×3

string ×3

awk ×2

bash ×1

dataframe ×1

dplyr ×1

escaping ×1

gawk ×1

linux ×1

mysql ×1

regex ×1

replace ×1

ruby-on-rails ×1

single-quotes ×1

substring ×1