在单引号之间替换单词

阿杰

我试图用bash替换fil中单引号之间的单词,我尝试使用sed但它不起作用。

文件内容

Haarlem -m 'foo' -n 'bar' aalsmeer > "goes to" -t 'value'
Roterdam -m 'foo2' -n 'bar2' amsterdam > "goes to" -t 'value'

预期产量

Haarlem -m "verified" -n "verified" aalsmeer > "goes to" -t 'value'
Roterdam -m "verified" -n "verified" amsterdam > "goes to" -t 'value'

我下面的sed命令不起作用

sed 's/-m '*.*' -n '*.*'/-m "verified" -n "verified"/'
日深

您可以在此处使用双引号:

$ sed "s/'[^']*'/\"verified\"/g" ip.txt
Haarlem -m "verified" -n "verified" aalsmeer > "goes to"
Roterdam -m "verified" -n "verified" amsterdam > "goes to" 
  • '[^']*'匹配'后跟非'字符,然后再是'字符
    • 你不能使用'.*',因为这将首先匹配'到最后'输入线
  • \"verified\"使用"verified"作为替换字符串,双引号被转义,因为它是被双引号内使用

另请参见:https : //mywiki.wooledge.org/Quotes为什么我的正则表达式在X中起作用而在Y中不起作用?(用于正则表达式和通配符之间的差异)


上述解决方案后,问题已更新。

$ cat ip.txt
Haarlem -m 'foo' -n 'bar' aalsmeer > "goes to" -t 'value'
Roterdam -m 'foo2' -n 'bar2' amsterdam > "goes to" -t 'value'

$ sed -E "s/(-[mn] )'[^']*'/\1\"verified\"/g" ip.txt
Haarlem -m "verified" -n "verified" aalsmeer > "goes to" -t 'value'
Roterdam -m "verified" -n "verified" amsterdam > "goes to" -t 'value'
  • -[mn]将匹配-m-n
  • (-[mn] ) 是一个捕获组,匹配的内容将在替换部分中重用为 \1

您也可以使用

sed -E "s/(-[^t] )'[^']*'/\1\"verified\"/g" ip.txt

防止仅-t '..'被替换并匹配所有其他单引号之前的模式-<char>和一个空格

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python模式替换单引号或双引号之间的单词

来自分类Dev

正则表达式替换单引号之间的空格

来自分类Dev

用双引号替换单引号php

来自分类Dev

将双引号替换为单引号?

来自分类Dev

使用sed命令替换包含某些单词的行中单引号内的值

来自分类Dev

使用regexp_replace替换字符串周围的单引号,但不能替换单词内的单引号,例如不能

来自分类Dev

在双引号或单引号之间匹配文本

来自分类Dev

红宝石正则表达式提取单引号之间的单词

来自分类Dev

使用bash脚本在两个单引号之间得到一个单词

来自分类Dev

Java-替换单引号而不影响多个单引号

来自分类Dev

在Python中用反斜杠单引号替换单引号

来自分类Dev

使用preg_replace替换单引号之间的所有点字符

来自分类Dev

使用sed替换两个字符之间的单引号

来自分类Dev

用不包含单词的单引号分隔文本

来自分类Dev

在每个单词周围加上单引号

来自分类Dev

groovy用单引号和双引号替换双引号

来自分类Dev

groovy用单引号和双引号替换双引号

来自分类Dev

替换目标c中的单引号

来自分类Dev

如果是单引号,请替换

来自分类Dev

Preg用单引号替换模式混淆

来自分类Dev

Javascript替换单引号不起作用

来自分类Dev

通过替换单引号防止SQL注入

来自分类Dev

Bash-命令替换添加单引号

来自分类Dev

替换单引号的代码不起作用

来自分类Dev

如何用单引号替换json数据

来自分类Dev

替换字符串中的单引号

来自分类Dev

在MATLAB中提取单引号之间的文本

来自分类Dev

评估单引号之间的变量

来自分类Dev

正则表达式通过忽略“已替换单引号”和“开始/结束单引号”来替换单引号

Related 相关文章

热门标签

归档