Bash-比较具有不同定界符的字符串的简便方法?

Critikullx

有没有更好的方法来检查两个字符串是否相等,而忽略给定的定界符,例如:

function is_equal() {
    local str1="$1"
    local delim1="$2"
    local str2="$3"
    local delim2="$4"

    IFS=$delim1 read -r -a array1 <<< "$str1"
    IFS=$delim2 read -r -a array2 <<< "$str2"

    if [[ ${#array1[@]} -ne ${#array2[@]} ]]; then
        return 1
    fi

    str1raw=$(IFS='' echo "${array1[*]}")
    str2raw=$(IFS='' echo "${array2[*]}")

    if [ "${str1raw}" != "${str2raw}" ]; then
        return 1
    fi

    return 0
}

is_equal "!etc!daemon!sys.conf" "!" "/etc/daemon/sys.conf" "/"

这行得通,但我不想与数组一起使用。

hek2mgl

只要您的字符串中包含文本数据(仅表示可打印的字符)是安全的,那么在比较之前,可以使用参数扩展将分隔符替换为不可打印的字符。这样,在比较期间,两个字符串共享相同的定界符:

if [ "${str1//$delim1/\\x01}" = "${str2//$delim2/\\x01}" ] ; then
    echo "strings are equal"
fi

我为定界符使用了不可打印的字符,以确保定界符不会成为数据本身的一部分。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

bash单词移动的不同定界符

来自分类Dev

javascript:将字符串拆分为具有不同定界符的数组

来自分类Dev

bash中的字符串定界忽略引号中的定界符

来自分类Dev

删除bash中由多字符定界符拆分的字符串的特定部分

来自分类Dev

bash:整数到字符串,分割并与定界符连接

来自分类Dev

使用长定界符将字符串拆分为bash中的数组

来自分类Dev

Bash Shell:在特定字符串和定界符之间进行grepping吗?

来自分类Dev

bash 4:通过任意定界符对字符串的子字符串(n)的通用访问?

来自分类Dev

bash 4:通过任意定界符对字符串的子字符串(n)的通用访问?

来自分类Dev

两个相同或不同定界符之间的子字符串(当定界符出现多次时)

来自分类Dev

Bash脚本比较2个具有不同长度字符串的文件

来自分类Dev

命令行:获取2个不同定界符之间的子字符串

来自分类Dev

bash中的RegEx在第一个定界符之后提取字符串

来自分类Dev

连接具有不同最后定界符的字符串

来自分类Dev

在bash脚本中使用多字符定界符

来自分类Dev

Bash脚本字符串比较运算符

来自分类Dev

如何仅解析具有不同定界符的一列?

来自分类Dev

将具有不同定界符的列与不幸的分数结构拆分为2

来自分类Dev

基于相同定界符的php字符串解析

来自分类Dev

带有不同定界符的配对列表

来自分类Dev

Bash IFS忽略了行尾的定界符

来自分类Dev

具有多个定界符的字符串流

来自分类Dev

匹配具有可变左右定界符的字符串

来自分类Dev

将具有嵌套定界符的字符串转换为映射

来自分类Dev

如何删除具有定界符的字符串中的重复值

来自分类Dev

具有4个定界符的TSQL解析字符串

来自分类Dev

Bash中的空字符串比较

来自分类Dev

bash中的字符串比较

来自分类Dev

bash中的字符串比较失败

Related 相关文章

  1. 1

    bash单词移动的不同定界符

  2. 2

    javascript:将字符串拆分为具有不同定界符的数组

  3. 3

    bash中的字符串定界忽略引号中的定界符

  4. 4

    删除bash中由多字符定界符拆分的字符串的特定部分

  5. 5

    bash:整数到字符串,分割并与定界符连接

  6. 6

    使用长定界符将字符串拆分为bash中的数组

  7. 7

    Bash Shell:在特定字符串和定界符之间进行grepping吗?

  8. 8

    bash 4:通过任意定界符对字符串的子字符串(n)的通用访问?

  9. 9

    bash 4:通过任意定界符对字符串的子字符串(n)的通用访问?

  10. 10

    两个相同或不同定界符之间的子字符串(当定界符出现多次时)

  11. 11

    Bash脚本比较2个具有不同长度字符串的文件

  12. 12

    命令行:获取2个不同定界符之间的子字符串

  13. 13

    bash中的RegEx在第一个定界符之后提取字符串

  14. 14

    连接具有不同最后定界符的字符串

  15. 15

    在bash脚本中使用多字符定界符

  16. 16

    Bash脚本字符串比较运算符

  17. 17

    如何仅解析具有不同定界符的一列?

  18. 18

    将具有不同定界符的列与不幸的分数结构拆分为2

  19. 19

    基于相同定界符的php字符串解析

  20. 20

    带有不同定界符的配对列表

  21. 21

    Bash IFS忽略了行尾的定界符

  22. 22

    具有多个定界符的字符串流

  23. 23

    匹配具有可变左右定界符的字符串

  24. 24

    将具有嵌套定界符的字符串转换为映射

  25. 25

    如何删除具有定界符的字符串中的重复值

  26. 26

    具有4个定界符的TSQL解析字符串

  27. 27

    Bash中的空字符串比较

  28. 28

    bash中的字符串比较

  29. 29

    bash中的字符串比较失败

热门标签

归档