需求:把当前目录下所有js文件里的“URL”替换成“GET_URL”[想想普通的方法就快疯了^()^]
解决:
sed -i "" 's/[^A-Za-z0-9_]URL[^A-Za-z0-9_]/GET_URL/g' js/*.js
注:
sed中可直接使用的RE:
* . ^ $ [ ] \ c
\w ( 相当于[A-Za-z_] ) \W ( 相当于[^A-Za-z_] )
sed中需转义使用的RE:
+ ? { } ( ) | < >
其他:
\d (d) \D (D) \s (s) \S (S)
匹配 单引号’ 用双引号
匹配 反引号` 用单引号
\b 匹配单词的前或后边界 ( 字符[^A-Za-z0-9_]均构成单词边界 )
\B 匹配单词的非边界 ( 字符[^A-Za-z0-9_]均构成单词边界 )
\< 匹配单词的位置前 ( 字符[^A-Za-z0-9_]均构成单词边界 )
\> 匹配单词的位置后 ( 字符[^A-Za-z0-9_]均构成单词边界 )
支持十进制,格式为“\d + 两位或三位十进制数”,如“\d065 或\d65 均代表字符 A ”
支持十六进制,格式为“\x + 两位十六进制数”,如“\x61 代表字符 A ”
支持八进制,格式为“\o + 两位或三位八进制数”,如“\o077 或\o77 均代表字符 ?,\o101代表字符 A ”