-1
我很困惑,为什么这不能按预期工作。在'gsub'中使用正则表达式的问题
d = "936589_WI_RAPIDS_STREET_DEPT"
f=d.gsub('/936*[0-9]_/',' ')
# => "936589_WI_RAPIDS_STREET_DEPT"
我本身测试我正则表达式,它给了我想要的输出:
"WI_RAPIDS_STREET_DEPT"
我很困惑,为什么这不能按预期工作。在'gsub'中使用正则表达式的问题
d = "936589_WI_RAPIDS_STREET_DEPT"
f=d.gsub('/936*[0-9]_/',' ')
# => "936589_WI_RAPIDS_STREET_DEPT"
我本身测试我正则表达式,它给了我想要的输出:
"WI_RAPIDS_STREET_DEPT"
gsub
接受一个正则表达式对象,而不是一个字符串。
尝试:
f=d.gsub(/936*[0-9]_/, ' ')
而且您正则表达式大概应该是如下:
f=d.gsub(/936[0-9]*_/, ' ')
'gsub'也接受一个字符串,它只是不会解析字符串中的正则表达式对象:) –
请删除IRB提示,代码'需要 “awesome_print”'和'd的返回值因为这些问题不是必需的。谢谢:) –
确定搞清楚了..我的语法是不正确的 - d.gsub /936.*[0-9]_/,“” – ssharma
只需删除引号围绕正则表达式。 – dawg