我想将字符串变量分成两部分。字符串具有以下形式:
mingw32mingw32
linux64mingw32
mac64mingw64
我想出去:
mingw32 mingw32
linux64 mingw32
mac64 mingw64
我知道cut
,但是我认为这太简单了。我也可以手动执行此操作(实际上只有五个或六个变体),但是我觉得有更好的方法。我只是不太精通Shell工具。
请注意,我希望它可以在POSIX sh中工作以实现最大的兼容性,因此没有GNU或Bash主义。
您可以使用POSIX Shell变量替换,但是会有些混乱。要获得数字后面跟字母的尾巴:
tail=${var#*[0-9][a-z]}
这样可以得到几乎正确的尾巴,例如ingw32
。要解决此问题,请通过修剪一个字符和尾部来获得头部:
head=${var%?$tail}
现在正确的尾部是修剪头部的值:
tail=${var#$head}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句