- ベストアンサー
全角空白での文字列分割について
bgbgの回答
- bgbg
- ベストアンサー率53% (94/175)
Perlのバージョンはどうなっていますか? 5.8.0でShiftJISの文字がうまく処理されないというバグがありました。 もしバージョンが5.8.0なら、バージョンアップをしましょう。
関連するQ&A
- PHP 空白文字で分割したい
$text = "日本 中国 オランダ" を 日本, 中国, オランダのように分割するために、 以下のコードを書きました。 preg_split("/[\s]+/", $text); しかし、全角スペースの時も分割したいので、正規表現を/[ \s]+/とすると、preg_splitの返す配列に期待したものが、入りません。なぜか空文字("")が含まれます。 どうすれば、全角スペースに対応できるでしょうか?
- ベストアンサー
- PHP
- 全角半角考慮した文字列分割
A列 B列 C列 あいうえおかきくけこ あいうえ おかきくけこ アイウエオカキクケコ アイウエオカキクケ コ あいうえオかきくけこ あいうえオ かきくけこ A列に全角半角混在のテキスト項目があります。 B列、C列に以下のルールで分割したいのですが、Excel関数で 実現可能でしょうか?可能な場合は式をご教授して 頂けますでしょうか。宜しくお願い致します。 ※全角をバイト数指定で分割して文字化けしないように 全角半角を考慮して分割したいと考えております。 B列 A列9桁目が半角の場合は半角9文字 A列9桁目全角の場合は半角8文字(全角4文字)をB列へ C列 A列10桁目が半角の場合は、左端10桁目~半角9文字 A列10桁目が全角の場合は、左端9桁目~半角9文字
- ベストアンサー
- オフィス系ソフト
- C# 文字列を改行コードで分割
C# 文字列を改行コードで分割 テキストボックスに記載された文字列を1行ごとに取り出そうと思い string[] strs = textBox1.Text.Split('\n'); とコーディングしたら、末尾に\rがついてしまいました。 末尾の\rを削除するコードを追加して書けばよいのですが、改行コード\r\nで分割する方法ありましたらお教えください。
- ベストアンサー
- C・C++・C#
- splitしない文字列について
split("\t",$moji) で$mojiを分割しているのですが、タブ区切りなのに分割しない文字列があります。 企業秘密な所もあり、問題の文字列そのままを報告できないのですが、分割をキャンセルするような文字コードってあるのでしょうか? その文字コードであやしい物は 「 」:スペース 「!」、「♪」 などが含まれています。 通常であれば10個に分割される文字列がまったく分割されなく分割数は1と出ます。もちろんタブ区切りになっています。 1つの文字列だけの事なのです。原因はまったく不明。よろしくお願いします。
- ベストアンサー
- PHP
- ""で囲まれていない箇所にある空白で分割
PHPのカテゴリにて、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=2334460 で同様の質問をした者なのですが、解決策を得られなかったので再度(こちらのPerlカテゴリにて)質問させて下さい。 (1)題名の通り、""に囲まれていない箇所にある空白によって文字列を分割したいのですが、split()等を使って一発で分割する正規表現はあるでしょうか。 (2)もし(1)が無理であれば、どういった手法が有効でしょうか。 ちなみに今のところ以下の方法で行っています。 1."" 中の空白をいったん別の文字に変換 2.split(/\s/) で分割 3.分割した各要素について1で変換した空白を復元
- ベストアンサー
- Perl
- splitを使ってスペース位置で文字列を区切りたい
splitを使ってスペース位置で文字列を区切りたいのですが、 String[] word = str.split(" ",0); //半角空白 のように書くと、全角スペースは区切りとしてみなされず、 String[] word = str.split(" ",0); //全角空白 のように書くと、半角スペースは区切りとしてみなしてくれません。 全角スペースでも半角スペースでも、スペース位置で文字列を区切りたいのですが、どのように書けばよいのでしょうか?
- ベストアンサー
- Java
- 文字列を二文字以上の文字列で分割したい。
文字列を二文字以上の文字列で分割したい。 perlやrubyなどではsplitを使えば任意の文字列で文字列を分割して配列に突っ込むことができたと思います。 c++でこういったことをやりたくて書いたりサイトを参考にしたりしていたのですが、 http://goodjob.boy.jp/chirashinoura/id/100.html http://networkprogramming.blog18.fc2.com/blog-entry-89.html のようにstrtokを使うと、たとえば..ドット二個が含まれるところで分割したいのにもかかわらずdelimに..を指定するとドットが一つのところでも分割されてしまいます。 文字列"cut"が含まれるところで切断したい場合でもc,u,tそれぞれが含まれる場所で切断されてしまします。 このような問題を解決するにはどのようにするのがいいのでしょうか? MFCで書いてるのでそれに含まれるライブラリなどが使える場合それを用いることができます。
- 締切済み
- C・C++・C#
- 文字列前後の「全角空白/半角空白/改行文字」を取り除く
PHPで、「文字列の前後に付加されている全角空白/半角空白/改行文字を取り除く」 という処理をしたいのですが、以下のように置換処理を書くとうまくいきません。 $after = preg_replace('/^[ \r\n]*(.*)[ \r\n]*$/u', '$1', $before); // [ \r\n]→[半角空白、全角空白、改行文字]です どううまくいかないのかといいますと、入力として半角スペース+全角文字が入ったときに、全角文字の先頭文字が文字化けしてしまいます。 たとえば、 <半角スペース>あああ をこれにかけると、 <よくわからない文字>ああ となります。 以下のように2回に分けてみると、正常に動きます。 $tmp = preg_replace('/[ \r\n]*$/u', '', $before); $after = preg_replace('/^[ \r\n]*/u', '', $tmp); 最初のように1回の正規表現による置換で済ませたい場合、 どのように書くのが適切なのでしょうか? PHPのバージョンは5.2.3です。
- ベストアンサー
- PHP
- 文字列に空白を入れたい
たくさんのデータがあるのですが、名前の列があるとして、 その名前はすべて、苗字が二文字の人のみの時に、苗字の名前の間に空白を入れたいのですが(ようするに、二文字目と三文字目の間に全角空白を入れたい。)、どのようなやりかたがあるでしょうか。 すぐに教えてくれると助かります。
- ベストアンサー
- オフィス系ソフト
- 文字列の' '(全角空白)の開始位置を返す関数
SQLServer2000で、文字列の' '(全角空白)の開始位置を返す関数を教えて下さい。 CHARINDEX かな?と思い試してみましたが、違ってたみたいで・・・。 よろしくお願い致します。
- ベストアンサー
- SQL Server
補足
バージョンは5.8.7です。 すみません。これも書き忘れてました。