标签: gsub

Ruby gsub不会逃避单引号

我不明白这里发生了什么.我应该如何输入gsub来获取字符串"Yaho \'o"?

>> "Yaho'o".gsub("Y", "\\Y")
=> "\\Yaho'o"
>> "Yaho'o".gsub("'", "\\'")
=> "Yahooo"
Run Code Online (Sandbox Code Playgroud)

ruby escaping gsub

25
推荐指数
1
解决办法
1万
查看次数

Lua字符串替换

我该怎么办?

我懂了:

name = "^aH^ai"
string.gsub(name, "^a", "")

应返回"Hi",但它将插入符号作为模式字符

这将是一个什么样的解决方案?(必须在gsub中完成)

string lua replace gsub lua-patterns

25
推荐指数
1
解决办法
8万
查看次数

在Ruby gsub块(regex)中使用命名捕获组

我正在尝试在Ruby中的块中使用命名捕获组.$1仍然有效,但我想用我给的名字来引用它.

"foo /(bar)".gsub(/(?<my_word> \(.*?\) )/x) do |match|
  puts "$1 = #{$1} and $my_word = #{$my_word}"
end
Run Code Online (Sandbox Code Playgroud)

预期:$1 = (bar) and $my_word = (bar)

ruby regex gsub

25
推荐指数
1
解决办法
6663
查看次数

当我使用分组时,如何使用gsub对Ruby正则表达式(regex)进行反向引用?

我想修补从网页中提取的一些文本数据.样品:

t="First sentence. Second sentence.Third sentence."
Run Code Online (Sandbox Code Playgroud)

在第二句末尾的点之后没有空格.这标志着第3个句子在原始文档中的单独行(在br标记之后).

我想使用这个正则表达式将"\n"字符插入适当的位置并修补我的文本.我的正则表达式:

t2=t.gsub(/([.\!?])([A-Z1-9])/,$1+"\n"+$2)
Run Code Online (Sandbox Code Playgroud)

不过遗憾的是它不工作:"NoMethodError:未定义的方法`+"的零:NilClass"我怎样才能正确地反向引用匹配的群体?在Microsoft Word中这么简单,我只需要使用\ 1和\ 2符号.

ruby regex backreference reference gsub

23
推荐指数
3
解决办法
2万
查看次数

如何使用ruby gsub Regexp与许多匹配?

我有csv文件内容在引用文本内有双引号

test,first,line,"you are a "kind" man",thanks
again,second,li,"my "boss" is you",good
Run Code Online (Sandbox Code Playgroud)

我需要用""替换逗号前面或后面的每个双引号.

test,first,line,"you are a ""kind"" man",thanks
again,second,li,"my ""boss"" is you",good
Run Code Online (Sandbox Code Playgroud)

所以"被"替换为""

我试过了

x.gsub(/([^,])"([^,])/, "#{$1}\"\"#{$2}")
Run Code Online (Sandbox Code Playgroud)

但没有奏效

ruby regex csv string-substitution gsub

20
推荐指数
2
解决办法
6万
查看次数

如何确定在rails中是否存在匹配返回true或false?

我想创建一个测试,返回true或false以进行电子邮件处理.

现在,如果电子邮件地址以r +开头,那么它是真的,否则它是假的.这将有助于我们的服务器忽略我们遇到的很多垃圾邮件.

例子:

r+kldslkadslkadslk@site.com .. true
r+123123312@site.com .. true
vigraaaa@site.com .. FALSE
Run Code Online (Sandbox Code Playgroud)

使用Rails/ruby​​/regex处理此问题的最有效方法是什么?

谢谢

目标

是导轨/红宝石中的一个衬垫:

ABORT if XXXXX == 0
Run Code Online (Sandbox Code Playgroud)

ruby regex ruby-on-rails gsub ruby-on-rails-3

19
推荐指数
4
解决办法
2万
查看次数

gsub中的正则表达式问题

我已经定义了

vec <- "5f 110y, Fast"
Run Code Online (Sandbox Code Playgroud)

gsub("[\\s0-9a-z]+,", "", vec)
Run Code Online (Sandbox Code Playgroud)

给" 5f Fast"

我原以为它会给出" Fast",因为逗号之前的所有内容都应该与正则表达式相匹配.

任何人都可以向我解释为什么不是这种情况?

regex r gsub

19
推荐指数
1
解决办法
556
查看次数

用awk替换```char

我有一个单独的行:和一个'我想要摆脱的行.我想用awk它.我尝试过使用:

 awk '{gsub ( "[:\\']","" ) ; print $0 }'
Run Code Online (Sandbox Code Playgroud)

 awk '{gsub ( "[:\']","" ) ; print $0 }'
Run Code Online (Sandbox Code Playgroud)

 awk '{gsub ( "[:']","" ) ; print $0 }'
Run Code Online (Sandbox Code Playgroud)

他们没有工作,但返回错误Unmatched "..当我放

 awk '{gsub ( "[:_]","" ) ; print $0 }'
Run Code Online (Sandbox Code Playgroud)

然后它工作并删除所有:_字符.我该如何摆脱'炭火?

awk gsub

18
推荐指数
4
解决办法
6万
查看次数

R - gsub替换反斜杠

我想gsub用2个反斜杠替换字符串中每个出现反斜杠的情况.

目前,我所尝试的是gsub("\\\\", "\\", x).这似乎不起作用.但是,如果我更改表达式而不是用"a"替换每个反斜杠,它可以正常工作.

> gsub("\\\\", "\\", "\\")
[1] ""
> gsub("\\\\", "a", "\\")
[1] "a"
> gsub("\\\\", "\\\\", "\\")
[1] "\\"
Run Code Online (Sandbox Code Playgroud)

最后一个字符只有一个反斜杠; R只打印2,因为它使用反斜杠打印转义字符.使用nchar确认长度为1.

是什么导致这个功能?第二个参数gsub不是正则表达式,因此在字符串文字中有4个反斜杠应该转换为带有2个反斜杠的字符.gsub上面的第一个调用返回一个空字符串更没意义.

regex r gsub

17
推荐指数
1
解决办法
2万
查看次数

通过计算特定字符来设置字符串

我有以下字符串:

strings <- c("ABBSDGNHNGA", "AABSDGDRY", "AGNAFG", "GGGDSRTYHG") 
Run Code Online (Sandbox Code Playgroud)

我想切断字符串,一旦A,G和N的出现次数达到一定值,比如说3.在这种情况下,结果应该是:

some_function(strings)

c("ABBSDGN", "AABSDG", "AGN", "GGG") 
Run Code Online (Sandbox Code Playgroud)

我试图用stringi,stringr和正则表达式的表达式,但我无法弄清楚.

regex r gsub stringr stringi

17
推荐指数
3
解决办法
491
查看次数