![]() |
坚强的南瓜 · 如何用 Python 调用 OpenAI ...· 1 年前 · |
![]() |
谈吐大方的烤土司 · 未将对象引用设置到对象的实例 - 圣杰 - 简书· 1 年前 · |
![]() |
爱热闹的金鱼 · python predict函数-掘金· 1 年前 · |
![]() |
帅气的鼠标 · Qt之QLineEdit-阿里云开发者社区· 2 年前 · |
据我所知,当你使用单引号时,里面的所有东西都被认为是字面上的。我想用这个做我的替身。但我也想找一个包含单引号或双引号的字符串。
例如,
sed -i 's/"http://www.fubar.com"/URL_FUBAR/g'
我想用URL_FUBAR替换" http://www.fubar.com “。sed应该如何识别我的//或双引号?
谢谢你的帮助!
编辑:
我可以使用
s/\"http\:\/\/www\.fubar\.\com\"/URL_FUBAR/g
吗?
是否真的转义单引号内的字符?
发布于 2011-09-23 00:03:26
sed
中的
s///
命令允许您使用其他字符而不是
/
作为分隔符,如
sed 's#"http://www\.fubar\.com"#URL_FUBAR#g'
或
sed 's,"http://www\.fubar\.com",URL_FUBAR,g'
双引号不是问题。要匹配单引号,请交换两种类型的引号。请注意,单引号字符串不能包含单引号(甚至不能包含转义的引号)。
如果
sed
要将这些点解释为文字点,而不是匹配任何一个字符的正则表达式模式
.
,则需要对这些点进行转义。
发布于 2013-05-17 21:00:30
我的问题是,我需要将
""
放在表达式之外,因为我在sed表达式本身内部有一个动态变量。因此,实际的解决方案是lenn jackman提出的,将sed正则表达式中的
"
替换为
[\"]
。
所以我要说的是:
RELEASE_VERSION="0.6.6"
sed -i -e "s#value=[\"]trunk[\"]#value=\"tags/$RELEASE_VERSION\"#g" myfile.xml
下面是:
#
是sed分隔符
正则表达式中的
[\"]
=
"
\"
=
\"tags/$RELEASE_VERSION\"
=我的替换字符串,重要的是它只有引号的值
发布于 2011-09-23 01:15:54
很难在单引号中转义单引号。试试这个:
sed "s@['\"]http://www.\([^.]\+).com['\"]@URL_\U\1@g"
示例:
$ sed "s@['\"]http://www.\([^.]\+\).com['\"]@URL_\U\1@g" <<END
this is "http://www.fubar.com" and 'http://www.example.com' here
END
产生
this is URL_FUBAR and URL_EXAMPLE here
https://stackoverflow.com/questions/7517632
复制相似问题
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
![]() |
谈吐大方的烤土司 · 未将对象引用设置到对象的实例 - 圣杰 - 简书 1 年前 |
![]() |
爱热闹的金鱼 · python predict函数-掘金 1 年前 |
![]() |
帅气的鼠标 · Qt之QLineEdit-阿里云开发者社区 2 年前 |