跳到主要内容

String(字符串)

String.base64Decode() ​

说明: 将 base64 编码的字符串转换为纯文本。

语法: String.base64Decode()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"aGVsbG8=".base64Decode() //=> "hello"

String.base64Encode() ​

说明: 将纯文本转换为 base64 编码的字符串。

语法: String.base64Encode()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"hello".base64Encode() //=> "aGVsbG8="

String.concat() ​

说明: 将一个或多个字符串连接到基础字符串末尾。也可以使用 + 运算符,参见示例。

语法: String.concat(string1, string2?, ..., stringN?)

返回值: String(字符串)

来源: JavaScript 函数

参数:

  • string1(String)— 要追加的第一个字符串。
  • string2(String)— 可选 — 要追加的第二个字符串。
  • stringN(String)— 可选 — 要追加的第 N 个字符串。

示例:

'sea'.concat('food') //=> 'seafood'
'sea' + 'food' //=> 'seafood'
'work'.concat('a', 'holic') //=> 'workaholic'

String.extractDomain() ​

说明: 如果字符串是电子邮件地址或 URL,则返回其域名;未找到时返回 undefined。

如果字符串还包含其他内容,可以先尝试使用 extractEmail() 或 extractUrl()。

语法: String.extractDomain()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"me@example.com".extractDomain() //=> 'example.com'
"http://n8n.io/workflows".extractDomain() //=> 'n8n.io'
"It's me@example.com".extractEmail().extractDomain() //=> 'example.com'

String.extractEmail() ​

说明: 提取字符串中找到的第一个电子邮件地址。未找到时返回 undefined。

语法: String.extractEmail()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"My email is me@example.com".extractEmail() //=> 'me@example.com'

String.extractUrl() ​

说明: 提取字符串中找到的第一个 URL。未找到时返回 undefined。仅识别完整的 URL,例如以 http 开头的 URL。

语法: String.extractUrl()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"Check out http://n8n.io".extractUrl() //=> 'http://n8n.io'

String.extractUrlPath() ​

说明: 返回 URL 中域名之后的部分,未找到 URL 时返回 undefined。

如果字符串还包含其他内容,可以先尝试使用 extractUrl()。

语法: String.extractUrlPath()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"http://n8n.io/workflows".extractUrlPath() //=> '/workflows'
"Check out http://n8n.io/workflows".extractUrl().extractUrlPath() //=> '/workflows'

String.hash() ​

说明: 返回使用指定算法计算出的字符串哈希值。未指定时,默认使用 md5。

语法: String.hash(algo?)

返回值: String(字符串)

来源: n8n 自定义功能

参数:

  • algo(String)— 可选 — 要使用的哈希算法。可选值:md5、base64、sha1、sha224、sha256、sha384、sha512、sha3、ripemd160。

示例:

"hello".hash() //=> '5d41402abc4b2a76b9719d911017c592'

String.includes() ​

说明: 返回 true 表示字符串包含 searchString,区分大小写。

语法: String.includes(searchString, start?)

返回值: Boolean(布尔值)

来源: JavaScript 函数

参数:

  • searchString(String)— 要查找的文本。
  • start(Number)— 可选 — 开始搜索的位置(索引)。

示例:

'team'.includes('tea') //=> true
'team'.includes('i') //=> false
// Returns false if the case doesn't match, so consider using .toLowerCase() first
'team'.includes('Tea') //=> false
'Team'.toLowerCase().includes('tea') //=> true

String.indexOf() ​

说明: 返回 searchString 在基础字符串中首次出现的索引(位置),未找到时返回 -1,区分大小写。

语法: String.indexOf(searchString, start?)

返回值: Number(数字)

来源: JavaScript 函数

参数:

  • searchString(String)— 要查找的文本。
  • start(Number)— 可选 — 开始搜索的位置(索引)。

示例:

'steam'.indexOf('tea') //=> 1
'steam'.indexOf('i') //=> -1
// Returns -1 if the case doesn't match, so consider using .toLowerCase() first
'STEAM'.indexOf('tea') //=> -1
'STEAM'.toLowerCase().indexOf('tea') //=> 1

String.isDomain() ​

说明: 返回 true 表示字符串是域名。

语法: String.isDomain()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"n8n.io".isDomain() //=> true
"http://n8n.io".isDomain() //=> false
"hello".isDomain() //=> false

String.isEmail() ​

说明: 返回 true 表示字符串是电子邮件地址。

语法: String.isEmail()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"me@example.com".isEmail() //=> true
"It's me@example.com".isEmail() //=> false
"hello".isEmail() //=> false

String.isEmpty() ​

说明: 返回 true 的情况是字符串没有字符,或值为 null 或 undefined。

语法: String.isEmpty()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"".isEmpty() // => true
"hello".isEmpty() // => false

String.isNotEmpty() ​

说明: 返回 true 表示字符串至少包含一个字符。

语法: String.isNotEmpty()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"hello".isNotEmpty() // => true
"".isNotEmpty() // => false

String.isNumeric() ​

说明: 返回 true 表示字符串表示一个数字。

语法: String.isNumeric()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"1.2234".isNumeric() // true
"hello".isNumeric() // false
"123E23".isNumeric() // true

String.isUrl() ​

说明: 返回 true 表示字符串是有效的 URL。

语法: String.isUrl()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"https://n8n.io".isUrl() //=> true
"n8n.io".isUrl() //=> false
"hello".isUrl() //=> false

String.length ​

说明: 字符串中的字符数量。

语法: String.length

返回值: Number(数字)

来源: JavaScript 函数

示例:

"hello".length //=> 5

String.match() ​

说明: 使用正则表达式匹配字符串。返回包含第一个匹配结果的数组;如果正则表达式设置了 g 标志,则返回所有匹配结果。未找到匹配项时返回 null。

如果只需检查文本是否存在,可以考虑改用 includes()。

语法: String.match(regexp)

返回值: Array(数组)

来源: JavaScript 函数

参数:

  • regexp(RegExp)— 包含待查找模式的正则表达式。存在 g 标志时,会查找多个匹配项,参见示例。

示例:

// Match all words starting with 'r'
"rock and roll".match(/r[^ ]*/g) //=> ['rock', 'roll']
// Match first word starting with 'r' (no 'g' flag)
"rock and roll".match(/r[^ ]*/) //=> ['rock']
// For case-insensitive, add 'i' flag
"ROCK and roll".match(/r[^ ]*/ig) //=> ['ROCK', 'roll']

String.parseJson() ​

说明: 返回字符串所表示的 JavaScript 对象或值。如果字符串不是有效的 JSON,则返回 undefined。不支持使用单引号的 JSON。

语法: String.parseJson()

返回值: any(任意类型)

来源: n8n 自定义功能

示例:

'{"name":"Nathan"}'.parseJson() //=> {"name":"Nathan"}
"{'name':'Nathan'}".parseJson() //=> undefined
'hello'.parseJson() //=> undefined

String.quote() ​

说明: 为字符串加上引号,并转义字符串中已有的引号。适用于构造 JSON、SQL 等内容。

语法: String.quote(mark?)

返回值: String(字符串)

来源: n8n 自定义功能

参数:

  • mark(String)— 可选 — 要使用的引号类型。

示例:

'Nathan says "hi"'.quote() //=> '"Nathan says \"hi\""'

String.removeMarkdown() ​

说明: 删除字符串中的所有 Markdown 格式,同时删除 HTML 标签。

语法: String.removeMarkdown()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"*bold*, [link]()".removeMarkdown() //=> "bold, link"

String.removeTags() ​

说明: 删除字符串中的标签,例如 HTML 或 XML 标签。

语法: String.removeTags()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"<b>bold</b>, <a>link</a>".removeTags() //=> "bold, link"

String.replace() ​

说明: 返回一个字符串,其中首次出现的 pattern 被替换为 replacement。

如需替换所有出现的位置,请使用 replaceAll()。

语法: String.replace(pattern, replacement)

返回值: String(字符串)

来源: JavaScript 函数

参数:

  • pattern(String|RegExp)— 字符串中要替换的匹配模式,可以是待匹配的字符串或正则表达式。
  • replacement(String)— 替换后使用的新文本。

示例:

'Red or blue or green'.replace('or', 'and') //=> 'Red and blue or green'
// A global, case-insensitive replacement:
let text = "Mr Blue has a blue house and a blue car";
let result = text.replace(/blue/gi, "red");
// A function to return the replacement text:
let text = "Mr Blue has a blue house and a blue car";
let result = text.replace(/blue|house|car/i, function (x) {
  return x.toUpperCase();
});

String.replaceAll() ​

说明: 返回一个字符串,其中所有出现的 pattern 均被替换为 replacement。

语法: String.replaceAll(pattern, replacement)

返回值: String(字符串)

来源: JavaScript 函数

参数:

  • pattern(String|RegExp)— 字符串中要替换的匹配模式,可以是待匹配的字符串或正则表达式。
  • replacement(String|function)— 替换后使用的新文本,可以是字符串或返回字符串的函数,参见示例。

示例:

'Red or blue or green'.replace('or', 'and') //=> 'Red and blue and green'
// Uppercase any occurrences of 'blue' or 'car'
// (You must include the 'g' flag when using a regex)

// text = 'Mr Blue has a blue car'
text.replaceAll(/blue|car/gi, x => x.toUpperCase()) //=> 'Mr BLUE has a BLUE CAR'

// Or with traditional function notation:
text.replaceAll(/blue|car/gi, function(x){return x.toUpperCase()}) //=> 'Mr BLUE has a BLUE CAR'

String.replaceSpecialChars() ​

说明: 将字符串中的特殊字符替换为最接近的 ASCII 字符。

语法: String.replaceSpecialChars()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"déjà".replaceSpecialChars() //=> "deja"

String.search() ​

说明: 返回模式在字符串中首次出现的索引(位置),未找到时返回 -1。模式使用正则表达式指定。如需使用文本查找,请参阅 indexOf()。

语法: String.search(regexp)

返回值: Number(数字)

来源: JavaScript 函数

参数:

示例:

// Pos of first word starting with 'n'
"Neat n8n node".search(/n[^ ]*/) //=> 5
// Case-insensitive match with 'i'
// Pos of first word starting with 'n' or 'N'
"Neat n8n node".search(/n[^ ]*/i) //=> 0

String.slice() ​

说明: 从指定位置提取字符串片段。更复杂的提取方式请参阅 match()。

语法: String.slice(start, end?)

返回值: String(字符串)

来源: JavaScript 函数

参数:

  • start(Number)— 起始位置,从 0 开始。负数表示从字符串末尾向前计数。
  • end(String)— 可选 — 选择的结束位置,不包含该位置的字符。负数表示从字符串末尾计算位置。省略时,提取到字符串末尾。

示例:

'Hello from n8n'.slice(0, 5) //=> 'Hello'
'Hello from n8n'.slice(6) //=> 'from n8n'
'Hello from n8n'.slice(-3) //=> 'n8n'

String.split() ​

说明: 将字符串拆分为子字符串数组。每次都在 separator 处拆分,输出不包含分隔符。

与在数组上使用 join() 的作用相反。

语法: String.split(separator?, limit?)

返回值: Array(数组)

来源: JavaScript 函数

参数:

  • separator(String)— 可选 — 用于拆分的字符串或正则表达式。省略时,返回仅包含原字符串的数组。
  • limit(Number)— 可选 — 返回的数组元素数量上限。省略时返回所有元素。

示例:

"wind,fire,water".split(",") //=> ['wind', 'fire', 'water']
"me and you and her".split("and") //=> ['me ', ' you ', ' her']
// Split one or more of space, comma and '?' using a regular expression
"me? you, and her".split(/[ ,?]+/) //=> ['me', 'you', 'and', 'her']

String.startsWith() ​

说明: 返回 true 表示字符串以 searchString 开头,区分大小写。

语法: String.startsWith(searchString, start?)

返回值: Boolean(布尔值)

来源: JavaScript 函数

参数:

  • searchString(String)— 要与基础字符串开头比较的文本。
  • start(Number)— 可选 — 开始搜索的位置(索引)。

示例:

'team'.startsWith('tea') //=> true
'team'.startsWith('Tea') //=> false
// Returns false if the case doesn't match, so consider using .toLowerCase() first
'Team'.toLowerCase().startsWith('tea') //=> true

String.substring() ​

说明: 从指定位置提取字符串片段。更复杂的提取方式请参阅 match()。

语法: String.substring(start, end?)

返回值: String(字符串)

来源: JavaScript 函数

参数:

  • start(Number)— 起始位置,从 0 开始。
  • end(String)— 可选 — 选择的结束位置,不包含该位置的字符。省略时,提取到字符串末尾。

示例:

'Hello from n8n'.substring(0, 5) //=> 'Hello'
'Hello from n8n'.substring(6) //=> 'from n8n'

String.toBoolean() ​

说明: 将字符串转换为布尔值。0、false 和 no 转换为 false,其他值均转换为 true,不区分大小写。

语法: String.toBoolean()

返回值: Boolean(布尔值)

来源: n8n 自定义功能

示例:

"true".toBoolean() //=> true
"false".toBoolean() //=> false
"0".toBoolean() //=> false
"hello".toBoolean() //=> true

String.toDateTime() ​

说明: 将字符串转换为 DateTime,便于进一步转换。支持的字符串格式包括 ISO 8601、HTTP、RFC2822、SQL 和以毫秒为单位的 Unix 时间戳。

如需解析其他格式,请使用 DateTime.fromFormat()。

语法: String.toDateTime()

返回值: DateTime

来源: n8n 自定义功能

示例:

"2024-03-29T18:06:31.798+01:00".toDateTime()
"Fri, 29 Mar 2024 18:08:01 +0100".toDateTime()
"20240329".toDateTime()
"1711732132990".toDateTime()

String.toJsonString() ​

说明: 处理字符串,使其可插入 JSON 对象:转义引号和特殊字符,例如换行符,并为字符串加上引号。

与 JavaScript 的 JSON.stringify() 相同。

语法: String.toJsonString()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

// str = 'The "best" colours: red\nbrown'
str.toJsonString() //=> '"The \\"best\\" colours: red\\nbrown"'

String.toLowerCase() ​

说明: 将字符串中的所有字母转换为小写。

语法: String.toLowerCase()

返回值: String(字符串)

来源: JavaScript 函数

示例:

"I'm SHOUTing".toLowerCase() //=> "i'm shouting"

String.toNumber() ​

说明: 将表示数字的字符串转换为数字。如果字符串不是以有效数字开头,则抛出错误。

语法: String.toNumber()

返回值: Number(数字)

来源: n8n 自定义功能

示例:

"123".toNumber() //=> 123
"1.23E10".toNumber() //=> 12300000000

String.toSentenceCase() ​

说明: 将字符串转换为句首大写形式,每个句子的首字母大写,其余字母小写。

语法: String.toSentenceCase()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"quick! brown FOX".toSentenceCase() //=> "Quick! Brown fox"

String.toSnakeCase() ​

说明: 将字符串转换为蛇形命名形式:空格和连字符替换为 _,删除符号,所有字母转换为小写。

语法: String.toSnakeCase()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"quick brown $FOX".toSnakeCase() //=> "quick_brown_fox"

String.toTitleCase() ​

说明: 将字符串转换为标题大小写形式。每个单词的首字母大写,其余字母保持原样。较短的介词和连词不大写,例如 ‘a’、‘the’。

语法: String.toTitleCase()

返回值: String(字符串)

来源: n8n 自定义功能

示例:

"quick a brown FOX".toTitleCase() //=> "Quick a Brown Fox"

String.toUpperCase() ​

说明: 将字符串中的所有字母转换为大写。

语法: String.toUpperCase()

来源: JavaScript 函数

示例:

"I'm not angry".toUpperCase() //=> "I'M NOT ANGRY"

String.trim() ​

说明: 删除字符串两端的空白字符,包括换行符、制表符、空格等。

语法: String.trim()

返回值: String(字符串)

来源: JavaScript 函数

示例:

'   lonely   '.trim() //=> 'lonely'

String.urlDecode() ​

说明: 对 URL 编码的字符串进行解码,将 %XX 形式的字符编码替换为对应字符。

语法: String.urlDecode(allChars?)

返回值: String(字符串)

来源: n8n 自定义功能

参数:

  • allChars(Boolean)— 可选 — 是否解码 URI 语法中的字符,例如 =、?。

示例:

"name%3DNathan%20Automat".urlDecode() //=> "name=Nathan Automat"
"name%3DNathan%20Automat".urlDecode(true) //=> "name%3DNathan Automat"

String.urlEncode() ​

说明: 对字符串进行编码,使其可用于 URL。空格和特殊字符替换为 %XX 形式的编码。

语法: String.urlEncode(allChars?)

返回值: String(字符串)

来源: n8n 自定义功能

参数:

  • allChars(Boolean)— 可选 — 是否编码 URI 语法中的字符,例如 =、?。

示例:

"name=Nathan Automat".urlEncode() //=> "name%3DNathan%20Automat"
"name=Nathan Automat".urlEncode(true) //=> "name=Nathan%20Automat"

相关资源 ​

本文为社区中文翻译。查看对应英文原文