mirror of
https://github.com/lune-org/docs.git
synced 2024-12-12 13:00:37 +00:00
Generate new API reference pages for Lune 0.8.5
This commit is contained in:
parent
1b768a5a7f
commit
712a7b5a5e
3 changed files with 244 additions and 0 deletions
|
@ -4,6 +4,7 @@
|
||||||
"luau": "Luau",
|
"luau": "Luau",
|
||||||
"net": "Net",
|
"net": "Net",
|
||||||
"process": "Process",
|
"process": "Process",
|
||||||
|
"regex": "Regex",
|
||||||
"roblox": "Roblox",
|
"roblox": "Roblox",
|
||||||
"serde": "Serde",
|
"serde": "Serde",
|
||||||
"stdio": "Stdio",
|
"stdio": "Stdio",
|
||||||
|
|
230
pages/api-reference/regex.md
Normal file
230
pages/api-reference/regex.md
Normal file
|
@ -0,0 +1,230 @@
|
||||||
|
# Regex
|
||||||
|
|
||||||
|
Built-in library for regular expressions
|
||||||
|
|
||||||
|
#### Example usage
|
||||||
|
|
||||||
|
```lua
|
||||||
|
local Regex = require("@lune/regex")
|
||||||
|
|
||||||
|
local re = Regex.new("hello")
|
||||||
|
|
||||||
|
if re:isMatch("hello, world!") then
|
||||||
|
print("Matched!")
|
||||||
|
end
|
||||||
|
|
||||||
|
local caps = re:captures("hello, world! hello, again!")
|
||||||
|
|
||||||
|
print(#caps) -- 2
|
||||||
|
print(caps:get(1)) -- "hello"
|
||||||
|
print(caps:get(2)) -- "hello"
|
||||||
|
print(caps:get(3)) -- nil
|
||||||
|
```
|
||||||
|
|
||||||
|
## Constructors
|
||||||
|
|
||||||
|
### new
|
||||||
|
|
||||||
|
Creates a new `Regex` from a given string pattern.
|
||||||
|
|
||||||
|
#### Errors
|
||||||
|
|
||||||
|
This constructor throws an error if the given pattern is invalid.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `pattern` `string` The string pattern to use
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `Regex` The new Regex object
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Methods
|
||||||
|
|
||||||
|
### isMatch
|
||||||
|
|
||||||
|
Check if the given text matches the regular expression.
|
||||||
|
|
||||||
|
This method may be slightly more efficient than calling `find` if you only need to know if the text
|
||||||
|
matches the pattern.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` Regex
|
||||||
|
|
||||||
|
- `text` `string` The text to search
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `boolean` Whether the text matches the pattern
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### find
|
||||||
|
|
||||||
|
Finds the first match in the given text.
|
||||||
|
|
||||||
|
Returns `nil` if no match was found.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` Regex
|
||||||
|
|
||||||
|
- `text` `string` The text to search
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `RegexMatch?` The match object
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### captures
|
||||||
|
|
||||||
|
Finds all matches in the given text as a `RegexCaptures` object.
|
||||||
|
|
||||||
|
Returns `nil` if no matches are found.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` Regex
|
||||||
|
|
||||||
|
- `text` `string` The text to search
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `RegexCaptures?` The captures object
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### split
|
||||||
|
|
||||||
|
Splits the given text using the regular expression.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` Regex
|
||||||
|
|
||||||
|
- `text` `string` The text to split
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `{ string }` The split text
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### replace
|
||||||
|
|
||||||
|
Replaces the first match in the given text with the given replacer string.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` Regex
|
||||||
|
|
||||||
|
- `haystack` `string` The text to search
|
||||||
|
|
||||||
|
- `replacer` `string` The string to replace matches with
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `string` The text with the first match replaced
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### replaceAll
|
||||||
|
|
||||||
|
Replaces all matches in the given text with the given replacer string.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` Regex
|
||||||
|
|
||||||
|
- `haystack` `string` The text to search
|
||||||
|
|
||||||
|
- `replacer` `string` The string to replace matches with
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `string` The text with all matches replaced
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# RegexCaptures
|
||||||
|
|
||||||
|
Captures from a regular expression.
|
||||||
|
|
||||||
|
## Methods
|
||||||
|
|
||||||
|
### get
|
||||||
|
|
||||||
|
Returns the match at the given index, if one exists.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` RegexCaptures
|
||||||
|
|
||||||
|
- `index` `number` The index of the match to get
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `RegexMatch` The match, if one exists
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### group
|
||||||
|
|
||||||
|
Returns the match for the given named match group, if one exists.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` RegexCaptures
|
||||||
|
|
||||||
|
- `group` `string` The name of the group to get
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `RegexMatch` The match, if one exists
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### format
|
||||||
|
|
||||||
|
Formats the captures using the given format string.
|
||||||
|
|
||||||
|
#### Example usage
|
||||||
|
|
||||||
|
```lua
|
||||||
|
local regex = require("@lune/regex")
|
||||||
|
|
||||||
|
local re = regex.new("(?<day>[0-9]{2})-(?<month>[0-9]{2})-(?<year>[0-9]{4})")
|
||||||
|
|
||||||
|
local caps = re:captures("On 14-03-2010, I became a Tenneessee lamb.");
|
||||||
|
assert(caps ~= nil, "Example pattern should match example text")
|
||||||
|
|
||||||
|
local formatted = caps:format("year=$year, month=$month, day=$day")
|
||||||
|
print(formatted) -- "year=2010, month=03, day=14"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
- `self` RegexCaptures
|
||||||
|
|
||||||
|
- `format` `string` The format string to use
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- `string` The formatted string
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# RegexMatch
|
||||||
|
|
||||||
|
A match from a regular expression.
|
||||||
|
|
||||||
|
Contains the following values:
|
||||||
|
|
||||||
|
- `start` -- The start index of the match in the original string.
|
||||||
|
- `finish` -- The end index of the match in the original string.
|
||||||
|
- `text` -- The text that was matched.
|
||||||
|
- `len` -- The length of the text that was matched.
|
|
@ -16,6 +16,9 @@ stdio.write("Hello, ")
|
||||||
stdio.write("World! ")
|
stdio.write("World! ")
|
||||||
stdio.write("All on the same line")
|
stdio.write("All on the same line")
|
||||||
stdio.ewrite("\nAnd some error text, too")
|
stdio.ewrite("\nAnd some error text, too")
|
||||||
|
|
||||||
|
-- Reading the entire input from stdin
|
||||||
|
local input = stdio.readToEnd()
|
||||||
```
|
```
|
||||||
|
|
||||||
## Functions
|
## Functions
|
||||||
|
@ -124,3 +127,13 @@ Writes a string directly to stderr, without any newline.
|
||||||
- `s` The string to write to stderr
|
- `s` The string to write to stderr
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
### readToEnd
|
||||||
|
|
||||||
|
Reads the entire input from stdin.
|
||||||
|
|
||||||
|
#### Returns
|
||||||
|
|
||||||
|
- The input from stdin
|
||||||
|
|
||||||
|
---
|
||||||
|
|
Loading…
Reference in a new issue