Skip to content

Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →

instance method

StringScanner#check_until

check_until(pattern)

This returns the value that scan_until would return, without advancing the scan pointer. The match register is affected, though.

Example
s = StringScanner.new("Fri Dec 12 1975 14:39")
s.check_until /12/          # -> "Fri Dec 12"
s.pos                       # -> 0
s.matched                   # -> 12

Mnemonic: it “checks” to see whether a scan_until will return a value.

See also #check #clear #charpos #concat also in 4.1 · 4.0 · 3.4 · 3.2 · 3.1 · 3.0