- ベストアンサー
VB6.0、スペース区切りでSplit関数。""
「kkk4 "バージョン 6" 23」 このような文字列(コマンドライン引数)をsplitで分割したいです。 ""で囲った部分は一続きとして配列に入れたいです。 なので期待としては ary(0)・・・kkk4 ary(1)・・・"バージョン 6" ary(2)・・・23 となってほしいですが、バージョンと6の間にスペースがあるので ary(0)・・・kkk4 ary(1)・・・"バージョン ary(2)・・・6" ary(3)・・・23 となってしまいます。 これを期待通りにするにはどうすればいいでしょうか? ""は実際には後で外そうと思っています。(「バージョン 6」という文字列が必要) ""が使えないかと思って一時的につけているのです。 大変恐れ入りますが、よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- real beatin(@realbeatin)
- ベストアンサー率82% (174/211)
- imogasi
- ベストアンサー率27% (4737/17068)
- dogs_cats
- ベストアンサー率38% (278/717)
関連するQ&A
- VB6とACCESS2000のSplit関数の違い
VB6とACCESS2000で同じプログラム開発をしております。 同じコーディングをしているのに結果が違っている為困っています。 [環境] ACCESS 2000 SP3 VisualBasic6.0 SP5 [内容] ある文字列をカンマ(「,」半角)で分割しています。 ACCESSプログラムでは対象文字列に全角カンマ「,」が存在するとその部分でも分割してしまいVB6と結果が違います。 分割の際split関数を使用していますが、第4引数は既定値がバイナリモードなはずなので省略しています。 第4引数を「vbBinaryCompare」と明記すれば同じ結果になるのですが、私の認識不足かもしれませんが、腑に落ちません。 [コーディング] Dim s1, s2() As String s1 = "A,B,C" s2 = Split(s1, ",") ACCESS・・・分割数1 VB6・・・分割数2 上記内容の違いの理由等ご存知の方ご教授お願いいたします。
- ベストアンサー
- Visual Basic
- splitでの文字列分割
文字列中の「,」で分割をしたいのですが 「\,」では分割したくありません このような場合、どのような正規表現をかけばいいのでしょうか? <?php $str = "asd,fgh,qwge\,zxc"; $ary_ary = split("[^\],",$str); print_r($ary_ary); ?> ------結果------ Array ( [0] => as [1] => fg [2] => qwge\,zxc ) いろいろ考えてみましたが 上のようにうまくいきませんでした ご教示おねがいします
- ベストアンサー
- PHP
- VBA 改行でsplitしたい
現在ウェブページから取得した文字列を改行部分でsplitして配列にしたいと考えています。 ob10-6<br /> this is test data ↑このような文字列を取得し、<br />部分で分割したいのですが、 この文字列がtmpという変数に入っているので、 x = split( tmp,"<br />") により、配列xの中に入れようとしたところ、どうも<br />部分で分割されていないようなのです。 vbCrLfなどを代わりに使用してみましたが分割できません。。 なぜ分割できないか、また、分割の仕方を教えていただけると幸いです。 よろしくお願いいたします。
- 締切済み
- Visual Basic
- 任意の区切り文字でsplitする方法
VBAで任意の区切り文字でsplitする方法を教えてください。 例えば 123 456 789 333 3444 66 65 22 といようなスペースあるいはタブで区切られたテキストデータがあるとします。 これを配列に格納したいのですが、 この区切りがタブ一つとか、スペース一つとか決まっていれば split関数で簡単に配列に格納することができますが、 タブかも知れないし、スペースがかも知れないし その数も未定の場合にはどうしたら良いですか? replace関数を使って、まず全てのタブをスペースに変換し その後に、複数のスペースを一つのスペースに変換し 最後にsplit関数を使うという方法しかないでしょうか? もっとスマートな方法があれば教えてください。
- 締切済み
- Visual Basic
- splitを使ってスペース位置で文字列を区切りたい
splitを使ってスペース位置で文字列を区切りたいのですが、 String[] word = str.split(" ",0); //半角空白 のように書くと、全角スペースは区切りとしてみなされず、 String[] word = str.split(" ",0); //全角空白 のように書くと、半角スペースは区切りとしてみなしてくれません。 全角スペースでも半角スペースでも、スペース位置で文字列を区切りたいのですが、どのように書けばよいのでしょうか?
- ベストアンサー
- Java
- split() 正規表現
正規表現で / (スラッシュ) .(ドット)にマッチ 正規表現により文字列を分割し、配列に格納する split("[/\.]" $v)としていましたが split関数が使えなくなるので、変わりの方法を考えていますが preg_split()などではうまくいきませんでした。 何か方法を教えて下さい。
- ベストアンサー
- PHP
- splitしない文字列について
split("\t",$moji) で$mojiを分割しているのですが、タブ区切りなのに分割しない文字列があります。 企業秘密な所もあり、問題の文字列そのままを報告できないのですが、分割をキャンセルするような文字コードってあるのでしょうか? その文字コードであやしい物は 「 」:スペース 「!」、「♪」 などが含まれています。 通常であれば10個に分割される文字列がまったく分割されなく分割数は1と出ます。もちろんタブ区切りになっています。 1つの文字列だけの事なのです。原因はまったく不明。よろしくお願いします。
- ベストアンサー
- PHP
- (VBA)Split関数を使った文字列の区切りについて教えて頂けますでしょうか?
VBA初心者でSplit関数を使った文字列の区切りがどうしてもうまくいかず非常に困っております。 アドバイス頂けますでしょうか。宜しくお願い致します。 詳細を説明させて頂くと、 (1)エクセルシートのA2セルからA??までの各セルにスペースを含んだ文字列がそれぞれ入力されており、そのそれぞれのセルをスペースで区切ってまず表示させる。 ※データは常にシートのA2からはじまりA3, A4,・・・と不特定に数十行あります (具体例は添付ファイルをご覧頂けますと幸いです。※画像が多少見づらいのですが、画面上のほうがもともとの表で、下の方が完成させたいイメージです。) そして、実際にトライしてみたVBAのソース・・・(本当お恥ずかしいというか 情けないですが。。) Sub data_split() Dim buf As String, tmp, cnt As Long, I As Long cnt = 2 buf = ThisWorksheet.Cells(cnt, 1).Value 'ループ処理(1)(2行目からセルが空になるまで行う処理) Do Until Cells(cnt, 1) = "" cnt = cnt + 1 tmp = split(buf, "") ' データ(文字列)をスペースで区切って出力。 For I = 0 To UBound(tmp) Cells(cnt, I + 1) = tmp(I) Next I Loop End Sub (2)A列からD列までの文字列はそのままで、E列以降(F,G、H・・・)に入った文字列はすべてまとめてE列の各セルに入力させたい。 'AからDまでのセルに入ったセルはそのままでよい。 'E以降の区切られたデータは全部Hセルに入力する VBA初心者なのですが、仕事上、取り急ぎこのようなイメージのVBAを作成しないといけないのですが、本やサイトを見ていろいろと試みているのですがどうしてもうまくいかず非常に困っております。。どうぞ宜しくお願い致します。 参考にしたサイト:http://officetanaka.net/excel/vba/tips/tips62.htm
- ベストアンサー
- オフィス系ソフト
- 文字列を任意の場所で分割(split)したい
CでCGIを書く上で、perlのsplit命令の代替になるようなライブラリを探しています。 www=xxx&yyy=zzz という引数をchar型の配列に入れ、それを & で分割し、次に = で分割して query[0].name = www; query[0].value = xxx query[1].name = yyy; query[1].value = zzz などと、perlと同等のことをさせたいのですが、文字列をその都度走査していたのでは処理が莫大になりそうなので、もしご存知であれば教えていただければと思います。
- ベストアンサー
- C・C++・C#
お礼
その方法がありましたか。ありがとうございました