如何在perl中连接两个子串

时间:2012-10-15 05:27:27

标签: perl join

如何仅连接字符串数组的子字符串,其中包含用户通过命令行输入位置的字符?

例如:如果$string"MALWCMRALPLCLALALCAWGPDPACAFVN"@array包含'A'$string的每个剪辑的子字符串。那么如何在原始字符串中连接位于3和9位(由用户通过命令行输入)的'L'的两个子串?

1 个答案:

答案 0 :(得分:1)

我不确定你打算做什么,但加入两个字符串你使用连接运算符

$string3 = $string1 . $string2 ;

加入一个字符串数组,你可以做

$string3 = join( "", @stringarr ) ;

您可以使用L

在数组中搜索包含grep的字符串
@selstrings = grep( /L/, @strarray ) ;

加入吧:

$string3 = join( "", @selstrings ) ;

使用grep中的模式,您可以定义您想要L's的位置:

 @selstrings = grep( /^(.{2}|.{8})L/, @starray ) ;

当然,您可以首先使用命令行中的变量来构造正则表达式:

 $regex = "^(.{" . $ARGV[0] . "}|.{" . $ARGV[1] . "})L" ;
 @selstrings = grep( /$regex/, @starray ) ;