summaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorSimon Rettberg2019-05-27 18:19:24 +0200
committerSimon Rettberg2019-05-27 18:19:24 +0200
commita92edd5f723d56a377905c91bb6321790d0d3a98 (patch)
tree583fd732c5cb9763b743b4206b9e722c6427e5d2 /modules
parentAdd download and download_retry (diff)
downloadslx-tools-a92edd5f723d56a377905c91bb6321790d0d3a98.tar.gz
slx-tools-a92edd5f723d56a377905c91bb6321790d0d3a98.tar.xz
slx-tools-a92edd5f723d56a377905c91bb6321790d0d3a98.zip
Add String and XML helpers
Diffstat (limited to 'modules')
-rw-r--r--modules/str.inc26
-rw-r--r--modules/xml.inc6
2 files changed, 32 insertions, 0 deletions
diff --git a/modules/str.inc b/modules/str.inc
new file mode 100644
index 0000000..6179033
--- /dev/null
+++ b/modules/str.inc
@@ -0,0 +1,26 @@
+#!/bin/ash
+
+str_trim() {
+ if [ $# = 0 ]; then
+ tr '\n' '\r' | sed -r 's/^[[:space:]]+//;s/[[:space:]]+$//' | tr '\r' '\n'
+ else
+ printf "%s" "$*" | tr '\n' '\r' | sed -r 's/^[[:space:]]+//;s/[[:space:]]+$//' | tr '\r' '\n'
+ fi
+}
+
+str_upper() {
+ if [ $# = 0 ]; then
+ tr 'a-z' 'A-Z'
+ else
+ printf "%s" "$*" | tr 'a-z' 'A-Z'
+ fi
+}
+
+str_lower() {
+ if [ $# = 0 ]; then
+ tr 'A-Z' 'a-z'
+ else
+ printf "%s" "$*" | tr 'A-Z' 'a-z'
+ fi
+}
+
diff --git a/modules/xml.inc b/modules/xml.inc
new file mode 100644
index 0000000..4fa4b84
--- /dev/null
+++ b/modules/xml.inc
@@ -0,0 +1,6 @@
+#!/bin/ash
+
+xml_get() {
+ xmlstarlet sel --text --encode utf-8 --template --value-of "$1" "$2"
+}
+