2011-03-15 79 views
0

我有一个字符串,看起来像这样:Perl:如何分割和切割给定的字符串?

$字符串=“标签:甜,yummie,巧克力,黑”

我想在一个MySQL表中插入这些标签。

  • 那么我该如何切断字符串中的[Tags:]?

  • 如何在foreach $ table中添加foreach $ string?

回答

3

首先用正则表达式去除“Tags:”,然后分割“,”。

my $string = "Tags: sweet, yummie, chocolate, dark" 
$string =~ s/Tags: //; 
my @tags = split /, /, @string; 

对于MySQL连接,您可以使用DBI :: MySQL。

0

Perl中有一个split function

split函数用于将字符串拆分为更小的部分。您可以在单个字符,一组字符或正则表达式(一种模式)上分割一个字符串。

您还可以指定将字符串拆分为多少部分。

0

如果你的标签总是列:, 结束了,你可以做somethong,如:

#!/usr/bin/perl 
use Modern::Perl; 
use Data::Dumper; 

my $string = "Tags: sweet, yummie, chocolate, dark"; 
my @parts = split/[:,]\s*/,$string; 
say Dumper \@parts; 

输出:

$VAR1 = [ 
      'Tags', 
      'sweet', 
      'yummie', 
      'chocolate', 
      'dark' 
     ];