-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