mirror of
https://github.com/pragma-/pbot.git
synced 2024-11-05 11:39:34 +01:00
34 lines
1.6 KiB
Markdown
34 lines
1.6 KiB
Markdown
# Functions
|
|
|
|
Functions are commands that accept input, manipulate it and then output the result. They are extremely
|
|
useful with [piping](../README.md#piping) or [command substituting](../README.md#substitution).
|
|
|
|
For example, the `uri_escape` function demonstrated in the [Substitution](../README.md#substitution) section earlier
|
|
makes text safe for use in a URL. We also saw the `sed` and `uc` functions demonstrated in [Piping](../README.md#piping).
|
|
|
|
<pragma-> uri_escape thing's & words
|
|
<PBot> thing%27s%20%26%20words
|
|
|
|
As demonstrated previously, the `sed` function replaces text using a substitution regex. The `uc` function
|
|
uppercases the text.
|
|
|
|
<pragma-> echo Hello world! | {sed s/world/universe/} | {uc}
|
|
<PBot> HELLO UNIVERSE!
|
|
|
|
Here's a short list of the Functions that come with PBot.
|
|
|
|
Name | Description
|
|
--- | ---
|
|
`uri_escape` | Percent-encodes unsafe URI characters.
|
|
`sed` | Performs sed-like regex substitution.
|
|
`grep` | Searches a string, using a regex, and prints the matching whole-word (e.g. `echo pizza hamburger hotdog \| {grep burger}` outputs `hamburger`).
|
|
`pluralize` | Intelligently makes a word or phrase plural.
|
|
`unquote` | Removes surrounding quotation marks.
|
|
`title` | Title-cases text. That is, lowercases the text then uppercases the first letter of each word.
|
|
`ucfirst` | Uppercases the first character of the text.
|
|
`uc` | Uppercases all characters.
|
|
`lc` | Lowercases all characters.
|
|
|
|
Additional Functions can be loaded via PBot Plugins. For examples, see [Plugin/FuncBuiltins.pm](../lib/PBot/Plugin/FuncBuiltins.pm) and
|
|
[Plugin/FuncGrep.pm](../lib/PBot/Plugin/FuncGrep.pm).
|