EA Server 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
17967 02/08/15 17:35:37 RE(1):文字列操作について←会議室が違ったようです、すみませんでした By みんみん
17951 02/08/15 10:58:09 文字列操作について By みんみん

日付:2002年08月15日 10:58 発信者:みんみん
題名:文字列操作について

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

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

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


付加情報:

Client SoftWare

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

Server SoftWare

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

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