您好我想在Ruby中用Regex消除非单词字符.
让我们说我有:
pal1 = "a@b?a"
pal1 = /[a-z0-9]/.match(pal1)
Run Code Online (Sandbox Code Playgroud)
当我把它放在http://www.rubular.com/中时,它表示匹配结果是:aba
但是,当我在我的ruby中运行代码时,它不是真的,它只给出了"a"
如何更改我的正则表达式以在pal1中实现aba.
在此先感谢您的时间.
您可以使用gsub删除这些字符.
pal1 = 'a@b?a'
pal1.gsub(/[^a-z0-9]/i, '')
# => "aba"
Run Code Online (Sandbox Code Playgroud)
您也可以使用scan来匹配这些字符,并加入他们在一起.
pal1 = 'a@b?a'
pal1.scan(/[a-z0-9]/i).join
# => "aba"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
75 次 |
| 最近记录: |