我想替换带有单词的冒号(:)和点(。),而不是数字 as:9:30无需删除 3.40无需删除 一个男孩:去上学 - 需要取出结肠 一个男孩:去学校 - 需要删除点
请让我知道如何编写sed命令来执行此操作
由于
答案 0 :(得分:0)
Perl对救援的外观断言:
echo $'1:2\n1.2\na:b\na.b\n1:a\nb:2\nc.3\n4.d\na: b\nc. d' \
| perl -pe 's/(?<=\D)[.:](?=\D)//'
(?<=\D)
=前面有非数字(?=\D)
=后跟非数字对于
等情况,您的规范仍然不明确2.
:3
答案 1 :(得分:0)
sed 方法:
s="9:30 a boy: goes to school 3.40 a boy. goes to school "
sed 's/\([A-Za-z]*\)[.:]\([[:space:]A-Za-z]\)/\1\2/g' <<< $s
输出:
9:30 a boy goes to school 3.40 a boy goes to school
[A-Za-z]
- 匹配字母字符