EA Server 電子会議室

コメント

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

日付:2002年08月15日 17:35 発信者:みんみん
題名:RE(1):文字列操作について←会議室が違ったようです、すみませんでした

>ご存知の方がいらしたら教えて下さい。
>文字列を分割する処理を行う際、以下のような現象が起きます。
>(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.