`
silentlakeside
  • 浏览: 108913 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

BASH - 字符串处理

 
阅读更多
  1. 使用正则表达式拆分字符串(BASH 3.0以上支持=~正则表达式)
    # 格式:name="value1","value2"
    # name、value1和value2是我们需要的字符串
    # 在分隔符前后可以有空格(tab等无显示字符不允许)
    # 用~=做正则表达式匹配
    # [ ]*表示可以有任意空格,()表示里面是要提取的部分,.*表示任意数目的任意字符串,=、,、“都没有定义数目,因此只能有一个
    # 匹配表达式右边最好是一个变量,因为在Bash 4.1,右边如果是字符串的话会强制使用字符串匹配而不是把它当作正则表达式,请参考http://blog.csdn.net/vimostan/article/details/8213784和http://wiki.bash-hackers.org/syntax/ccmd/conditional_expression
    REG='[ ]*(.*)[ ]*=[ ]*"(.*)"[ ]*,[ ]*"(.*)"[ ]*'
    if [[ $var =~ $REG ]]; then
        # 用${BASH_REMATCH[n]}获取第n部分,n从1开始
        name=${BASH_REMATCH[1]}
        value1=${BASH_REMATCH[2]}
        value2=${BASH_REMATCH[3]}
    fi  
分享到:
评论

相关推荐

    BASH 中的字符串处理

    字符串处理是BASH编程中的重要组成部分,它允许用户对文本数据进行操作,包括截取、替换、比较等。这篇博文将深入探讨BASH中的字符串处理技巧。 一、字符串定义与赋值 在BASH中,字符串可以被赋值给变量,常见的...

    bash过滤字符串的命令介绍

    在Linux系统中,Bash shell提供了一系列强大的命令来处理字符串,这些命令包括grep、sed、cut等。本文将详细介绍这些命令的功能、参数及其使用方法。 首先,让我们来看看grep命令。grep全称为Global Regular ...

    Advanced Bash-Scripting Guide(pdf)

    字符串处理是脚本中常见的操作,awk工具在处理字符串方面表现出色。参数扩展是另一种处理字符串的方法,它允许脚本编写者在不调用外部程序的情况下进行复杂的字符串操作。 通过阅读这本书,读者不仅可以掌握Bash...

    bash-5.2的源代码,纯C的shell

    1. **解析器(Parser)**:这部分代码负责将用户输入的命令行字符串转换为内部可以处理的数据结构。它涉及到词法分析和语法分析,包括识别命令、参数、管道、重定向等元素。 2. **命令执行器(Command Executor)**...

    高级Bash脚本编程指南(Advanced Bash-Scripting Guide)中英文版本

    6. **正则表达式**:Bash支持正则表达式,用于模式匹配和字符串操作,这对于文本处理和数据过滤至关重要。 **ABS_Guide_cn.zip包含的中文手册和示例,为中文读者提供了方便,使得理解Bash脚本编程更加容易。同时,...

    Advanced Bash-Scripting Guide 中英版及源码

    1. **基础语法**:了解如何定义变量,使用字符串和数值运算,以及如何处理数组。Bash支持命令替换、参数扩展和命令替换等特性,这些在编写脚本时非常实用。 2. **流程控制**:学习如何使用条件语句(如if-then-else...

    Advanced Bash-Scripting Guide <>

    9.2. 操作字符串 9.3. 参数替换 9.4. 指定类型的变量:declare 或者typeset 9.5. 变量的间接引用 9.6. $RANDOM: 产生随机整数 9.7. 双圆括号结构 10. 循环和分支 10.1. 循环 10.2. 嵌套循环 10.3. 循环控制 10.4. ...

    Advanced Bash-Scripting Guide (包括中译本)

    教程详细解释了如何声明、赋值、引用和修改变量,以及字符串、数字和数组的操作方法。 2. **流程控制**:Bash支持if、for、while和until等条件和循环结构,这些结构在编写逻辑复杂的脚本时不可或缺。教程会介绍如何...

    bash-oo-framework:Bash Infinity是bash的现代样板框架标准库

    5. **标准库**:除了基础的OOP结构,框架还提供了一系列标准库函数,涵盖了常见的操作,如字符串处理、数组操作、文件系统交互等,简化了常见的脚本任务。 6. **测试支持**:为了保证代码质量,bash-oo-framework...

    Advanced Bash-Scripting Guide(中译版)

    8. **条件和测试命令**:使用`test`或`[[`进行条件检查,如文件属性、字符串比较和数值计算。 9. **循环结构**:掌握`for`、`while`和`until`循环,以及`case`语句的使用。 10. **脚本调试和错误处理**:了解如何...

    Linux Shell Scripting With Bash - 2005-Unencrypted

    - 示例:`0MRY\&7LIPP&7GVMTXMRK&[MXL&&EWL` 可能涉及Shell中的变量定义或字符串操作。 2. **Shell脚本结构**:介绍如何编写结构化的Shell脚本,包括函数定义、循环控制等。 - 示例:`'ST]VMKLX*+*,--.*F]*7EQW*4...

    abs-guide----Advanced Bash-Scripting Guide

    本书的后续章节继续深入到更复杂的主题,如变量的进一步探索、字符串操作、循环与分支、命令替换、算术扩展、函数、数组、间接引用等,还包括了系统和管理命令、正则表达式、重定向、子shell、受限shell、进程替换等...

    Bash-Scripting-源码.rar

    - **字符串**: 使用双引号包围字符串, `${str#prefix}`去除前缀,`${str##prefix}`去除最长前缀。 6. **正则表达式** - Bash支持正则表达式匹配,如`[[ string =~ pattern ]]`进行模式匹配。 7. **文件与目录...

    bash-4.2 for unix linux

    9. **增强的条件表达式**:增加了对文件类型的检查(如是否为符号链接、设备文件等)和字符串操作的支持。 10. **POSIX兼容性改进**:Bash 4.2致力于提高与POSIX标准的一致性,使得脚本在不同的Unix和Linux系统间...

    shell 批量处理 字符串指令行

    首先,让我们了解一些基本的shell字符串处理命令: 1. **变量赋值**:在shell中,我们可以通过`var="string"`来定义一个字符串变量。 2. **引用**:双引号(`"`)内的变量会被解析,单引号(`'`)内的变量则不会。例如...

    Bash-Beginners-Guide.pdf.zip_bash program_beginners

    Bash支持正则表达式,可以用于文件名扩展、字符串查找和替换等。熟悉正则表达式的基本语法和特殊字符,能极大提升在Bash中的数据处理能力。 **9. Shell编程技巧** 高级Bash编程技巧包括数组、位置参数、命令替换、...

    a-bash-template:一种bash模板(BaT),旨在使脚本开发和命令行参数管理更强大,更易于实现和维护。

    5. **Bash Shell扩展**:除了标准的Bash特性,`a-bash-template` 可能还提供了额外的函数和工具,以增强Bash语言的功能,比如条件表达式、循环结构或者更强大的字符串操作。 6. **模块化设计**:通过模块化设计,...

    Advanced Bash-Scripting Guide 读书笔记

    这本书详细地讲解了各种Bash脚本的编写技巧,包括变量、字符串处理、正则表达式、算术运算、流程控制语句、函数定义、数组、算术和字符串表达式、进程替换以及命令行选项解析等,是一本内容丰富、实用性强的参考书。...

    deline一个ES6字符串标记能够删除多行字符串中多余的换行

    在JavaScript开发中,字符串处理是一项常见的任务,尤其是在处理多行文本时。ES6引入了许多新的语法特性,使得处理字符串变得更加方便。"deline"是一个专为处理多行字符串设计的库,它专注于删除多余的换行符,从而...

    Bash字符串常用操作

    本文档详细介绍了Bash字符串操作中的参数扩展功能,该功能允许用户根据变量的值或是否存在来动态地替换变量值。参数扩展是Bash编程中常用的技术之一,尤其适用于编写脚本时变量处理。以下是根据文档内容总结的各个...

Global site tag (gtag.js) - Google Analytics