Home

Awesome

Obsoleted by https://github.com/vlang/pcre

2021/10/18 - Please use the official pcre module, by v install pcre, then updating your code to do import pcre instead of import spytheman.regex .

The API is the same, but the official one is supported, unlike this module.

v-regex

A simple regex library for VLang. It wraps the venerable PCRE library, so you will need it installed as well.

Prerequisites:

You can install libpcre using your favourite package manager:

Debian: apt-get install libpcre3-dev

Fedora: yum install pcre-devel

Installation

You can install this module using v install spytheman.regex, and then use it with import spytheman.regex .

When there are updates, you can update with v update spytheman.regex .

You can also just run v install spytheman.regex again.

Example

(this can also be found in examples/match_after.v)

import spytheman.regex

fn main() {
  r := regex.new_regex('Match everything after this: (.+)', 0) or {
    println('An error occured!')
    return
  }

  m := r.match_str('Match everything after this: "I <3 VLang!"', 0, 0) or {
    println('No match!')
    return
  }

  // m.get(0) -> Match everything after this: "I <3 VLang!"
  // m.get(1) -> "I <3 VLang!"'
  // m.get(2) -> Error!
  whole_match := m.get(0) or {
    println('We matched nothing...')
    return
  }

  matched_str := m.get(1) or {
    println('We matched nothing...')
    return
  }

  println(whole_match) // Match everything after this: "I <3 VLang!"
  println(matched_str) // "I <3 VLang!"

  r.free()
}
$ v -o example examples/match_after.v
$ ./example
Match everything after this: "I <3 VLang!"
"I <3 VLang!"

Usage

Some examples are available in the examples directory.

Built With

License

MIT

Contributors