1

我有一些非常简单的问题困扰了我一整天:

  1. 我怎样才能得到第一个号码$variable

  2. 如何删除之前的第一个数字";"

  3. 如何更改号码$updateNum

$updateNum= 1

$variable="2;,A1,A2,A3,A4,A5,A6,A7,B1,B2,B3,B4,B5,B6,B7,C1,C2,C3,C4,C5,C6,C7,D1,D2,D3,D4,D5,D6,D7,E1,E2,E3,E4,E5,E6,E7,F1,F2,F3,F4,F5,F6,F7,G1,G2,G3,G4,G5"`
4

3 回答 3

2

尝试:

oldVal="${variable%%;*}"
variable="$updateNum;${variable#*;}"
于 2012-11-23T13:39:24.133 回答
0

这将一次性完成:

variable=$(echo $variable | sed -E "s/[0-9]+?/$updateNum/")

基准:

time variable=$(echo $variable | sed -E "s/[0-9]+?/$updateNum/") 

real    0m0.002s
user    0m0.001s
sys     0m0.000s 
于 2012-11-23T14:45:21.003 回答
-1

FIRST NUMBER: echo $variable | sed '/[^[:digit:]]*\([[:digit:]]*\).*/ s::\1:'

the others can be done identically

于 2012-11-23T14:06:23.627 回答