通过计算它们来提取字母

时间:2015-03-05 22:14:24

标签: csh counting letters

我正在寻找通过计算csh shell中开头的字母来提取一些字符串。例如,

设置a ="你好911不仅仅是91"

我想提取从8到10的字母,即911,类似于(8:10)。同样,91为20到21.怎么可能?

感谢您的帮助。 拉吉

1 个答案:

答案 0 :(得分:0)

csh没有字符串函数。 UNIX传统上使用小而简单的程序。选择数据(列或单词)可以使用(例如)sedawkcut来完成。在这种情况下,使用cut的一个解决方案是:

% set a = "hello 911 is not 91 only"
% echo $a
hello 911 is not 91 only
% echo $a | cut -c 7-9
911
% echo $a | cut -c 18-19
91

请注意,您的列有点偏离,911确实是第7到第9个字符。

或者如果您想将结果放在变量中:

% set a = "hello 911 is not 91 only"
% set b = `echo $a | cut -c 7-9`
% set c = `echo $a | cut -c 18-19`
% echo "I found $b and $c"
I found 911 and 91