Watch
1
0
Fork
You've already forked golang-github-lucasjones-reggen
0
No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-07-08 18:11:18 +02:00
debian Releasing fastforward version 0.0~git20200904.37ba4fa-1~ffwd13+u1. 2026-07-08 18:11:18 +02:00
.travis.yml Adding upstream version 0.0~git20200904.37ba4fa. 2026-07-08 18:11:01 +02:00
LICENSE Adding upstream version 0.0~git20200904.37ba4fa. 2026-07-08 18:11:01 +02:00
README.md Adding upstream version 0.0~git20200904.37ba4fa. 2026-07-08 18:11:01 +02:00
reggen.go Adding upstream version 0.0~git20200904.37ba4fa. 2026-07-08 18:11:01 +02:00
reggen_test.go Adding upstream version 0.0~git20200904.37ba4fa. 2026-07-08 18:11:01 +02:00

Reg-gen

This package generates strings based on regular expressions

Try it here

Usage

package main

import (
	"fmt"

	"github.com/lucasjones/reggen"
)

func main() {
	// generate a single string
	str, err := reggen.Generate("^[a-z]{5,10}@[a-z]{5,10}\\.(com|net|org)$", 10)
	if err != nil {
		panic(err)
	}
	fmt.Println(str)

	// create a reusable generator
	g, err := reggen.NewGenerator("[01]{5}")
	if err != nil {
		panic(err)
	}

	for i := 0; i < 5; i++ {
		// 10 is the maximum number of times star, range or plus should repeat
		// i.e. [0-9]+ will generate at most 10 characters if this is set to 10
		fmt.Println(g.Generate(10))
	}
}

Sample output:

bxnpubwc@kwrdbvjic.com
11000
01010
01100
01111
01001