我有以下字符串componentDidMount() {
const tryNode1 = ReactDOM.findDOMNode(this.refs.foo);
const tryNode2 = this.refs.foo;
console.log(tryNode1);
console.log(tryNode2);
}
,我需要将libVersion = '1.23.45.6'
替换为1.23.45.6
。
显然版本可以是格式相似的任何数字(不一定是4个数字)。
我尝试使用以下但不起作用
1.23.45.7
答案 0 :(得分:2)
基本sed,即没有任何参数的sed使用BRE
(基本正则表达式)。在BRE
中,您必须转义+
,以使正则表达式+
的力量重复前一个令牌一次或多次,同样对于捕获组\(regex\)
echo "libVersion = '1.23.45.6'" | sed "s/[0-9.]\+/1.23.45.7/"
您也可以使用否定的char类来替换单引号中存在的所有字符。
echo "libVersion = '1.23.45.6'" | sed "s/'[^']*'/'1.23.45.7'/"
由于替换应该只发生一次,因此您不需要g
全局修饰符。