知识点
相关文章
更多最近更新
更多shell脚本的字符串截取
2019-03-11 00:44|来源: 网络
以变量 var=http://www.google.com/test.htm为例,讲解shell截取字符串的方法
一 # 号截取,删除左边字符,保留右边字符。
echo ${var#*//}
其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符
即删除 http://
结果是 :www.google.com/test.htm
二 ## 号截取,删除左边字符,保留右边字符。
echo ${var##*/}
##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符
即删除 http://www.google.com/
结果是 test.htm
三 %号截取,删除右边字符,保留左边字符
echo ${var%/*}
%/* 表示从右边开始,删除第一个 / 号及右边的字符
结果是:http://www.google.com
四 %% 号截取,删除右边字符,保留左边字符
echo ${var%%/*}
%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符
结果是:http:
五 从左边第几个字符开始,及字符的个数
echo ${var:0:5}
其中的 0 表示左边第一个字符开始,5 表示字符的总个数。
结果是:http:
六 从左边第几个字符开始,一直到结束。
echo ${var:7}
其中的 7 表示左边第8个字符开始,一直到结束。
结果是 :www.google.com/test.htm
七 从右边第几个字符开始,及字符的个数
echo ${var:0-7:3}
其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。
结果是:test
八 从右边第几个字符开始,一直到结束。
echo ${var:0-7}
表示从右边第七个字符开始,一直到结束。
结果是:test.htm
注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)
转自网络
相关问答
更多-
啊,这个函数该怎么实现对字符串的截取?[2023-08-31]
作了一个通用的Form,如下所示。REPORTZGANG_STR1LINE-SIZE 150LINE-COUNT 50.* MESSAGE-ID .data: M type string.DATA: M1TYPE string.DATA V_NO TYPE I.data v_no1 type i.DATA V_CHAR(1) TYPE C.DATA V_STRING1 TYPE string.data v_len type i.data v_string type string.M = '12.0/34.5 ... -
字符串的截取[2022-04-02]
name = Add&999.split('&')[0] Number=Add&999.split('&')[1] -
shell脚本中如何截取一个字符串?[2023-03-30]
filename=/mnt/1111 echo ${filename##*/} 1111 -
求教shell脚本截取字符串问题[2021-12-29]
while read p; do x=$(echo $p|cut -d'|' -f1) y=$(echo $p|cut -d'|' -f2) echo $x echo $y done 评论0 0 0 加载更多 -
easyUI 截取字符串 \ 如何处理[2022-10-28]
如果单纯针对你要的这个字符串,可以这样: var ss = s.split('\\');//s就是原来的字符串,'\'存在转义,要用'\\'代替 ss[1]就是'123.jpg'了 -
bat如何截取这样的字符串?[2023-01-05]
@echo off set "str=C:\Program Files (x86)\360Apps\Green\10101010\abc" for /f "delims=" %%i in ("%str%") do (echo %%~dpi) pause变量为一个完整路径用for 命令很容易处理. -
MFC截取某个字符串中某个位置到某个位置[2024-02-14]
CSTring有个函数叫GetAt() 就是获取某个位置的字符 应该可以实现楼主需要的功能 更多惊喜 请查看MSDN -
请问smarty如何截取字符串?[2022-09-14]
{$string|truncate_cn:"10":"..."} 第一个为截取的字符长度,第二个为后缀字符 -
ASP.NET 截取字符串问题[2023-05-07]
using System; using System.Collections.Generic; using System.Text; namespace TestCA { class Program { static void Main(string[] args) { string str = "_TitleStr_KeyStr_CommnetStr_DeacStr"; //如果字符串首字符是用来截取字符串的那个字符,那么把他去掉,不然会多截取一个空值 if (str.IndexOf("_") == 0) ... -
Vb.net 字符串截取[2022-02-08]
{“Xm”:“李明”,“Dh”:“123456”,“Nl”:“30”}这是个JSON串,在序列化后,可以得到值。你可以使用System.Web.Script.Serialization.JavaScriptSerializer类来完成任务。也可以利用第三方工具比如:Newtonsoft.Json.dll等,来完成任务。 如何使用System.Web.Script.Serialization.JavaScriptSerializer类或第三方工具,网上有大量代码,或参阅微软在线帮助。这里就不贴了。