• ベストアンサー

splitについて教えていただきます

もし、区切り記号は","なら、下記(1)ように書けば結構ですが、今のデータは(2)のようなものです。つまり区切り記号は" "(スペースではなく、TABです)です。 どう書ければ良いですか。 (1) a = split("abc,def,123", ",") | |_ 区切り記号 |_ データ列挙 (2) あ い う え お 以上、宜しくお願いいたします

  • kyounn
  • お礼率73% (170/231)

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.3

split(分割される文字列, 区切り文字列) ので、 (1)そのまま記述 a = split("abc||def||123", "||") a = split("abc|def|123", "|") (2)キャラクタコードも指定可能 a = split("あ い う え お", chr(9))

kyounn
質問者

お礼

やってみたところできました。 ありがとうございました

その他の回答 (2)

  • yy_y
  • ベストアンサー率39% (99/252)
回答No.2

VB6なら, a = Split("あ い う え お", vbTab) でできます.

kyounn
質問者

お礼

回答ありがとうございます。 使えました。ありがとうございました

  • bonyamk
  • ベストアンサー率29% (49/166)
回答No.1

a = split("あ い う え お", "\t") で、どうでしょう?

kyounn
質問者

お礼

回答ありがとうございました。 やってみましたが、実現できませんでした。

関連するQ&A

  • splitと同じ処理

    たとえば、 String[] s = new String[10]; String str = "abc:def:ghijk:lmn" s = str.split(":"); と同じようなことをsplitを使わずに簡単に行う(定石的な)方法はないでしょうか? 正規表現ではなく文字列による区切りのみの場合を考えます。

    • ベストアンサー
    • Java
  • シェルスクリプトでのスプリット

    bshでのスプリットはどのようにするのでしょうか? ファイルAには、スペース区切りで以下のデータが入ってます。 # cat fileA parameter1 parameter2 parameter3 parameter1x parameter2x parameter3x ....... .. 上記のファイルでparameter2の部分(真ん中のデータ)を 取得するには、どのようになりますか? 以上宜しくお願いします。

  • 任意の区切り文字でsplitする方法

    VBAで任意の区切り文字でsplitする方法を教えてください。 例えば 123 456 789 333 3444 66 65 22 といようなスペースあるいはタブで区切られたテキストデータがあるとします。 これを配列に格納したいのですが、 この区切りがタブ一つとか、スペース一つとか決まっていれば split関数で簡単に配列に格納することができますが、 タブかも知れないし、スペースがかも知れないし その数も未定の場合にはどうしたら良いですか? replace関数を使って、まず全てのタブをスペースに変換し その後に、複数のスペースを一つのスペースに変換し 最後にsplit関数を使うという方法しかないでしょうか? もっとスマートな方法があれば教えてください。

  • 文字列の検索 集計

    エクセルデータにて     A      B      C 1  ABC    ○○○    XYZ 2  ABC    ○○○    PQR 3  DEF    ×××    XYZ 4  DEF    ×××    PQR 5  DEF    ×××    HIJ *アルファベット、記号は文字列 において、下記形式にしたい場合はどの様な手法がありますでしょうか?     A      B      C 1  ABC    ○○○    XYZ PQR    2  DEF    ×××    XYZ PQR HIJ その際、Cに表示させる方法は、1)連続形式、2)カンマ区切り、3)別列の追加 が考えられると思いますが、どの形式でも構いません。(理想は2ですが) 初心者質問ですが、宜しくお願いします。

  • splitを使ってスペース位置で文字列を区切りたい

    splitを使ってスペース位置で文字列を区切りたいのですが、 String[] word = str.split(" ",0);  //半角空白 のように書くと、全角スペースは区切りとしてみなされず、 String[] word = str.split(" ",0);  //全角空白 のように書くと、半角スペースは区切りとしてみなしてくれません。 全角スペースでも半角スペースでも、スペース位置で文字列を区切りたいのですが、どのように書けばよいのでしょうか?

    • ベストアンサー
    • Java
  • タブの場合→A = split(B,",")の、split、の書き方

    Bに、aaaa,bbbbbb,ccccc、があれば A(1)に、aaaa、が入ります カンマ区切りのデータが切り離されます ところが、カンマ区切りでなく、 タブ区切りの場合はどう記述するのですか タブのアスキーコード(内部コード)は09です Bには aaaa bbbbbb cccccc のように入っています A = split(B,",")のカンマのところはどう記述  するのでしょうか、よろしくお願いします

  • splitメソッドで"で囲まれていないカンマのみで区切ることは可能でし

    splitメソッドで"で囲まれていないカンマのみで区切ることは可能でしょうか。 現在質問している別の質問と関連するのですが、下記のように"で囲まれていない カンマのみを区切り文字にするような正規表現はありますでしょうか。 例)123,"abc",456,",",",,"を分解  123  "abc"  456  ","  ",," 「括弧で囲まれている」であれば「".*,.*"」などはどうだろうかと思ったのですが、 囲まれていないという表現が思いつきませんでした。 よろしければアドバイスを頂けないでしょうか。

    • ベストアンサー
    • Java
  • split関数で区切り文字がない場合

    b=111.222 a = split(b , ".") ⇒ a(0) = 111 a(1)=222 b=333 a = split(b , ".") ⇒ a(0) = 333 a(1)=333 このような結果が得られるのでしょうか。 それとも区切り文字がない場合、a(0)、a(1)を使用するとコンパイルエラーでしょうか。

  • splitが思うように動きません助けて下さい。

    文字列から、明細と金額にわけてそこから検索できるプログラムを作っています。 テスト用に下記サンプルを作ったのですが、検索明細($moneyvalue)をコーヒーに した場合のみ、値が戻ってきませんでした。 そこで、中のsplit部分を表示するようにしたところ ★収入=-10000. ★電車=+1000. ★コ=. ★[ヒ=. ★[=+2000. ★雑誌=+240. ★=. ★その他=+500. 0 このように コーヒーの部分だけ上手くsplitが動いていないことが分かりました。 しかしココから手詰まりでどのように直せばいいのか分かりません。 想定される結果 ★収入=-10000. ★電車=+1000. ★コーヒー=+2000. ★雑誌=+240. ★その他=+500. 2000 このようにするにはどうしたらいいのか、分かる方おりましたら教えて下さい。 なお、当方はperl初心者です(涙) ----以下サンプルコードです---- #! /usr/local/bin/perl use Encode qw(encode_utf8); use CGI; my $moneyvalue = "コーヒー"; my $moneyline = "収入-10000,電車+1000,コーヒー+2000,雑誌+240、その他+500"; print &chkmoneyValue($moneyline,$moneyvalue); exit; #==============================================================================  sub chkmoneyValue { my ($moneyline , $moneyvalue)=@_; my $lp=0; my $flg=0; my @data= split(/[、,]/, $moneyline); my $datavalue = 0; foreach my $wdata (@data) { $wdata =~ s/\+/\,\+/; $wdata =~ s/\-/\,\-/; my @data2 = split(/[,]/, $wdata); print "★$data2[0]=$data2[1].\n"; if($data2[0] eq $moneyvalue){ $datavalue=$data2[1]; last; } } return $datavalue; }

    • ベストアンサー
    • Perl
  • [SQL]重複内容を持つデータから1件抽出かつ複数のカラムを表示したい

    [SQL]重複内容を持つデータから1件抽出かつ複数のカラムを表示したい 初めてお世話になります。 データベース種別はH2です。 参考:http://www.h2database.com/html/main.html 下記のようなテーブルAがあるとします。   ID  |  TAG  | ―――――+―――――|   1   |  abc   |   1   |  def   |   1   |  ghi   |   2   |  abc   |   2   |  ghi   |   3   |  abc   |   3   |  def   |   3   |  ghi   |   4   |  abc   | 上記テーブルAから下記例のような結果を得られるSQLを知りたいのです。   ID  |  TAG  | ―――――+―――――|   1   |  abc   |   2   |  abc   |   3   |  abc   |   4   |  abc   | 上記結果でなくとも、   ID  |  TAG  | ―――――+―――――|   1   |  def   |   2   |  ghi   |   3   |  def   |   4   |  abc   | であっても構いません。(TAG列のデータはどんな内容でもよいです。) 実現させたいのは、 (1)ID列が重複しない結果を表示させたい、 かつ (2)TAG列も表示させたい ということです。 これでイケるだろ!と思ってあえなく失敗したSQLは下記です; select distinct(ID), TAG from A 宜しくお願い致します。

専門家に質問してみよう