shell 使用指定的分割符来分割字符串的方法
shell 如何用指定的分隔符来分割字符串让结果为一个字符串数组,类似 java 中的 split, 而 split 关键字已经留给文件分割了,故字符串就分割处理就不能在使用了,那如何来处理字符串串分割呢?方法有两种
一、对于不包含空格的字符串,使用下面方法
方法一
#!/bin/bash string="hello,shell,haha" array=(${string//,/ }) for var in ${array[@]} do echo $var done
方法二
#!/bin/bash string="hello,shell,haha" OLD_IFS="$IFS" IFS="," array=($string) IFS="$OLD_IFS" for var in ${array[@]} do echo $var done
方法三:利用tr 指令实现字符替换
#!/bin/bash string="one,two,three,four,five" array=(`echo $string | tr ',' ' '` ) for var in ${array[@]} do echo $var done
二、对于包含空格的字符串,使用下面方法
#!/bin/bash str='this is a good question, hello shell, look at me, show your enthusiasm' i=1 while((1==1)) do splitchar=`echo $str|cut -d "," -f$i` if [ "$splitchar" != "" ] then ((i++)) echo $splitchar else break fi done
到此这篇关于shell 使用指定的分割符来分割字符串的方法的文章就介绍到这了,更多相关shell 分割字符串内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
Shell脚本实现简单分割字符串
我们有这样一个字符串: 复制代码 代码如下: info='abcd;efgh' 现在想获取abcd和efgh,我们可以简单地用cut工具来获取: 复制代码 代码如下: fstr=`echo $info | cut -d \; -f 1` sstr=`echo $info | cut -d \; -f 2` 这里主要是用了cut工具的-d和-f参数: -d:指定字段的分隔符,默认的字段分隔符为"TAB": -f:显示指定字段的内容: 关于cut工具其他参数可参考这里:cut命令
-
在Shell中分割字符串的例子
比如,要分割 test="aaa,bbb,cc cc,dd dd",可以这样 复制代码 代码如下: arr=$(echo $test|tr "," "\n") 还可以这样 复制代码 代码如下: OLD_IFS=$IFSIFS=','arr=$testIFS=$OLD_IFS 然后用 复制代码 代码如下: for x in $arr; do echo $xdone 看看效果 或者更直接一点 复制代码 代码如下: IFS=',' arr=($tes
-
shell 使用指定的分割符来分割字符串的方法
shell 如何用指定的分隔符来分割字符串让结果为一个字符串数组,类似 java 中的 split, 而 split 关键字已经留给文件分割了,故字符串就分割处理就不能在使用了,那如何来处理字符串串分割呢?方法有两种 一.对于不包含空格的字符串,使用下面方法 方法一 #!/bin/bash string="hello,shell,haha" array=(${string//,/ }) for var in ${array[@]} do echo $var done 方法二 #!/bi
-
php根据指定位置和长度获得子字符串的方法
本文实例讲述了php根据指定位置和长度获得子字符串的方法.分享给大家供大家参考.具体分析如下: php的substr函数功能非常强大,不断可以从前往后去子字符串还可以从后往前取字符串 <?php $string = "beginning"; print("Position counted from left: ".substr($string,0,5)."\n"); print("Position counted form rig
-
Asp Split函数之使用多个分割符的方法
首先,我在知道Split这个函数的作用,是把一个字符串按指定的分割符分割成一个字符串数组. ASP里有这个Split,是这样定义的dim Split(byval source as string ,byval str as string) as string() source是源字符串,str是分隔符 我这里用了VB.net的写法,方便说明返回值的类型和参数的类型. 大家一看就明白怎么用了. 在C#里,我们是这样用的 string[] Split(string source,ch
-
Java如何根据不同系统动态获取换行符和盘分割符
目录 根据不同系统动态获取换行符和盘分割符 1.获取盘分割符 2.获取换行符 java分割空行 分割换行符 txtAll是总文本,数据如下 根据不同系统动态获取换行符和盘分割符 1.获取盘分割符 File.separator 2.获取换行符 windows系统为\r\n,Linux系统为 \n String lineSeparator = System.getProperty("line.separator", "\n"); 默认为\n java分割空行 分割换行符
-
php将字符串随机分割成不同长度数组的方法
本文实例讲述了php将字符串随机分割成不同长度数组的方法.分享给大家供大家参考.具体分析如下: 这里使用php对字符串在指定的长度范围内进行随机分割,把分割后的结果存在数组里面 function RandomSplit($min, $max, $str){ $a = array(); while ($str != ''){ $p = rand($min, $max); $p = ($p > strlen($str)) ? strlen($str) : $p; $buffer = substr($
-
swing分割窗口控件JSplitPane使用方法详解
本文为大家分享了JSplitPane的使用方法,供大家参考,具体内容如下 1.swing分割窗口控件JSplitPane,用来将窗口分割成两个部分. 2.分割后的窗口每个窗口只能放一个控件,想要方多个控件的话,可以在上面方一个JPane面板,这样就可以方多个控件.swing分割窗口控件JSplitPane,用来将窗口分割成两个部分.JSplitPane提供两个常数让你设置到底是要垂直分割还是水平分割.这两个常数分别是:HORIZONTAL_SPIT,VERTICAL_SPLIT 3.使用方法:
-
Python实现模拟分割大文件及多线程处理的方法
本文实例讲述了Python实现模拟分割大文件及多线程处理的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python #--*-- coding:utf-8 --*-- from random import randint from time import ctime from time import sleep import queue import threading class MyTask(object): """具体的任务类"&qu
-
php分割合并两个字符串的函数实例
本文实例讲述了php分割合并两个字符串的函数.分享给大家供大家参考.具体实现方法如下: 这里实现把两个字符串进行分割合并,例如str1=aaaa,str2=bbbb,合并后生成abababab /** * Merges two strings in a way that a pattern like ABABAB will be * the result. * * @param string $str1 String A * @param string $str2 String B * @ret
-
Python实现分割文件及合并文件的方法
本文实例讲述了Python实现分割文件及合并文件的方法.分享给大家供大家参考.具体如下: 分割文件split.py如下: #!/usr/bin/python ########################################################################## # split a file into a set of parts; join.py puts them back together; # this is a customizable ve
-
利用shell获取指定日期前N天的日期
一.创建测试文件test.sh #!/bin/sh . /etc/profile # 参数: # args[0] ,数据日期,日期格式yyyy-MM-dd # 取30天以前的日期 function get_date_30daysbefore() { sec=`date -d $1 +%s` sec_30daysbefore=$((sec - 86400*30)) days_before=`date -d @$sec_30daysbefore +%F` echo $days_before } if
随机推荐
- 解析MySQL创建外键关联错误 - errno:150
- centos 5 手动分区来安装系统的方法
- 弹出消息的bat代码(msg命令详细解释)
- cmd if条件 条件判断
- java模拟http的Get/Post请求,并设置ip与port代理的方法
- 在ASP.NET 2.0中操作数据之十七:研究插入、更新和删除的关联事件
- php实现过滤UBB代码的类
- Codeigniter校验ip地址的方法
- 深入浅析用PHP实现MVC
- 加强版phplib的DB类
- C++如何动态的生成对象详解
- 基于JavaScript实现生成名片、链接等二维码
- javascript背投广告代码的完善
- Flash 中"设为首页"代码
- 让IIS支持任意扩展名和未知扩展名的下载(下载站设置)
- Java生成验证码功能实例代码
- Zend Framework教程之资源(Resources)用法实例详解
- docker 搭建lnmp环境的方法步骤
- 使用FileZilla快速搭建FTP文件服务的图文教程
- layui实现点击按钮给table添加一行