社区
Linux/Unix社区
帖子详情
Shell脚本字符串的处理问题!
findfriend
2010-05-14 01:40:54
在一个shell里,有一个字符串变量 VAR = “ABCE123?AE"
怎么在shell里判断该变量里有?字符?
请高手指点!
...全文
382
11
打赏
收藏
Shell脚本字符串的处理问题!
在一个shell里,有一个字符串变量 VAR = “ABCE123?AE" 怎么在shell里判断该变量里有?字符? 请高手指点!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lbiori241
2010-05-18
打赏
举报
回复
既然是入参,你就应该保证在接口处传入的参数正确,也就是说,你传入的stringZ应该是‘abc\-*’而不是abc\-*
Adebayor
2010-05-16
打赏
举报
回复
[Quote=引用 1 楼 steptodream 的回复:]
刚才不是回复了吗 你不就是想看一个字符串里是否有问号么?
echo $VAR | grep "\?"
如果有? 上面一句会输出该字符串 echo #?返回0 否则没有输出 echo $?返回1
[/Quote]
正解
steptodream
2010-05-16
打赏
举报
回复
正如你所说呀
findfriend
2010-05-16
打赏
举报
回复
to steptodream:
谢谢!
哈哈,试验了好多次,发现如下规律:
stringZ="abc\-*"
stringX=abc\-*
通过expr lengh $xxx的方式来求字符串长度,前者的长度比后者大1。
所以,感觉“”会把\当作一个字符而非转移字符来看待的。
看来,通过这个方法好像不太行阿,那能不能通过其他方法求出来stringX里字符的个数(\要当作一个字符计算而非转移字符)!
steptodream
2010-05-16
打赏
举报
回复
难倒我了 shell里\就是转义字符
findfriend
2010-05-16
打赏
举报
回复
ps:stringZ这里我写的是一个临时变量,但是,
实际运用中是一个入参
。谢谢!
findfriend
2010-05-16
打赏
举报
回复
首先谢谢steptodream.
但是,我的工程里stringZ是一个入参,我的目的就是为了判断这个入参里的字符是否合法(
当入参里包含\、/、?、*的时候为非合法)
,其中一个就是当里面包含字符 \ 的时候,该入参为非合法,有什么办法呢?
再谢谢!
steptodream
2010-05-16
打赏
举报
回复
现在我需要把\当作一个字符而不是一个转义字符,该怎么办呢?
----------------
再加一个\
stringZ=abc123*?^\\-_.
findfriend
2010-05-16
打赏
举报
回复
#!/bin/sh
stringZ=abc123*?^\-_.
let n=0
strval=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUWXYZ012345679-_.
leng=$(expr length "$stringZ")
echo $leng
while [ $n -le $leng ]; do
tmp=${stringZ:n:1}
pos=$(expr index "$strval" "$tmp")
echo $pos
let n++
done
这个是我写的一个脚本,循环判断字符串stringZ里的字符是否存在strval里面,但是,运行的时候发现,字符\被认为一个转义字符,所以,求出来的字符串长度不是13而是12(因为把\-当作了一个字符)。现在我需要把\当作一个字符而不是一个转义字符,该怎么办呢?
多谢!
geniusqiao
2010-05-14
打赏
举报
回复
VAR = “ABCE123?AE"
if echo #{VAR} | grep "?" > /dev/null 2>&1
then
echo "该字符里面有问号"
else
echo "没有"
fi
steptodream
2010-05-14
打赏
举报
回复
刚才不是回复了吗 你不就是想看一个字符串里是否有问号么?
echo $VAR | grep "\?"
如果有? 上面一句会输出该字符串 echo #?返回0 否则没有输出 echo $?返回1
shell
脚本
字符串
处理
shell
脚本
中
字符串
的分割、截取和拼接。
Linux
Shell
脚本
字符串
变量拼接与赋值总结
Linux
Shell
脚本
字符串
拼接与赋值总结
字符串
拼接 最近在工作用到
shell
脚本
,用到了
字符串
变量的拼接,同时需要对
字符串
进行赋值,这里与大家分享一下,
字符串
拼接
shell
脚本
里面可以对字符...
Shell
脚本
字符串
应用
记录:440 场景:
Shell
脚本
字符串
应用。定义
字符串
、获取
字符串
长度、拼接
字符串
、截取
字符串
。
linux
shell
脚本
字符串
连接符,linux
shell
脚本
中
字符串
的连接方法
linux
shell
脚本
中
字符串
的连接方法 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!19.90 积分Linux
Shell
脚本
中
字符串
的连接方法如果想要在变量后面添加一个字符...
shell
脚本
字符串
比较(Linux)
shell
脚本
字符串
比较
Linux/Unix社区
23,120
社区成员
74,507
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章