我的问题是正则表达式.*
似乎与特殊字符不匹配,如下所示:
\200
\201
\202
...
(emacs
)。
我有一个文件,在分隔符之间有一些值,如:
[a].[b]
我希望像这样显示它们:
a=b
所以我使用正则表达式:
sed 's/^\[\(.*\)\]\.\[\(.*\)\]/\1=\2/g' toto
虽然有效但[]
之间的字符不是\200
sed
这样的字符不起作用,就好像.*
与这些字符不匹配一样。
有没有人有想法?
答案 0 :(得分:2)
使用perl:
perl -pe 's,^\[([^]]+)\]\.\[([^]]+)\],$1=$2,' toto
答案 1 :(得分:1)
:
M-x query-replace-regexp
RET
\ [\(。* \)] \。\ [\(。* \)]
RET
\ 1 = \ 2
RET