Tại sao tôi có thể làmcủa Ruby dòng lệnh một lớp lót phụ vs quét
ruby -pe "sub /.*{((\d+\.){3}).*/, '\115'" < file.txt
nhưng nếu tôi cố gắng scan
thay vì sub
tôi nhận được
-e: 1: trong
<main>': undefined method
quét' cho chính: Object (NoMethodError)
Đây là khó hiểu từ sub
không phải là một phương pháp trên Object
một trong hai.
Tôi cũng đã cố gắng nó theo cách Perl, một cái gì đó giống như
ruby -ne "/.*/; puts $1" <file.txt
nhưng điều đó không bay.
Tôi có thể tìm tài liệu về vấn đề này ở đâu?
phụ là phương pháp dưới hạt nhân là một mô-đun bao gồm trong đối tượng do đó bạn nhận được nó dưới phạm vi của đối tượng chính, nơi quét không nếu bạn đang chạy trên ruby 2.0. Nếu bạn đang chạy 1.8.7 sau đó bạn gọi quét bằng cách làm $ _ quét (pattern) – Raghu