ローマ字のひらがなに変換ついて


hop  2005-02-20 11:32:51  No: 13329

前回の質問で変換させることはなんとかできたのですが、

fdelphi/samples/01361.html  を使って

  a:=rome2kana(Memo1.Lines[0]);
  Edit1.Text:=(a);

通常
!TEST! konbanwa
  ↓変換
て こんばんわ

理想の変換

!TEST! konbanwa
  ↓変換
!TEST! こんばんわ


TESTdesu
↓変換
TESTdesu

① !で囲まれている部分は変換させずに、その他を変換させ結果を表示
② 予め指定された文字列は変換させない

このように変換したいのですがどうすればいいでしょうか?
よろしくお願いします。


node  2005-02-20 12:24:43  No: 13330

修正
②は予め設定された文字だけ変換しない。
konbanwa TEST
↓変換
こんばんわ  TEST

できそうない気がしますが。。。


321  2005-02-21 04:33:37  No: 13331

文字列を[0]からチェックしてゆくのであれば
1はBoolen型のフラグでも立てて[i]='!'が来たら
フラグ:=not フラグとしてフラグ=Falseのときのみカナ化します。
2は同じように一文字づつ検索をかける際にcopyを使って予約語を検索するか、予め予約語のある位置を保持させて、その開始から終了までをスキップすれば可能です。
どちらも
http://forum.nifty.com/fdelphi/samples/01361.html
が理解できればサンプルを示さずともできるかと思います。


node  2005-02-22 04:18:43  No: 13332

321さん
すいません始めたばかりなもので。
もう少し勉強してから取り掛かろうと思います。
ご迷惑おかけしました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加