PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
17980 02/08/19 13:13:55 RE(2):PB7.0: 文字列の分割について By みんみん
17969 02/08/15 22:53:21 RE(1):PB7.0: 文字列の分割について By めめ
17968 02/08/15 17:38:12 PB7.0: 文字列の分割について By みんみん

カテゴリ:PowerBuilderの不具合?
日付:2002年08月15日 17:38 発信者:みんみん
題名:PB7.0: 文字列の分割について

ご存知の方がいらしたら教えて下さい。
文字列を分割する処理を行う際、以下のような現象が起きます。
(PowerBuilderのバージョンは7.0.3cです)

60バイトある文字列を15バイトづつ分割しようとしています。
LenとLenW関数によって15バイト目が全角か半角の判定を行い、パターン分けしていますが
14?15バイト目にまたがる全角文字によって分割がうまくできません。

例:’1234567890123行目’の場合、’1234567890123行’と’目’に分割できる
    ’1234567890123件目’の場合、’1234567890123件’は表示されるが
    ’目’が表示されない

ロジック(抜粋):
CASE 16 TO 30
   IF Len( Mid( s_data, 15, 1 ) ) = LenW( Mid( s_data, 15, 1 ) ) THEN
      IF Len( Mid( s_data, 30, 1 ) ) = LenW( Mid( s_data, 30, 1 ) ) THEN
         /*半角・半角*/
         s_data1 = LeftC( s_data, 15 )
         s_data2 =  MidC( s_data, 16, 15 )
      ELSE
         /*半角・全角*/
         s_data1 = LeftC( s_data, 15 )
         s_data2 = MidC( s_data, 16, 15 )
      END IF
   ELSE
      IF Len( Mid( s_data, 30, 1 ) ) = LenW( Mid( s_data, 30, 1 ) ) THEN
         /*全角・半角*/
         s_data1 = LeftC( s_data, 16 )
         s_data2 = MidC( s_data, 17, 14 )
      ELSE
         /*全角・全角*/
         s_data1 = LeftC( s_data, 16 )
         s_data2 = MidC( s_data, 17, 14 )
      END IF
END IF

以上、宜しくお願い致します。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.