前回の質問で変換させることはなんとかできたのですが、
fdelphi/samples/01361.html を使って
a:=rome2kana(Memo1.Lines[0]);
Edit1.Text:=(a);
通常
!TEST! konbanwa
↓変換
て こんばんわ
理想の変換
①
!TEST! konbanwa
↓変換
!TEST! こんばんわ
②
TESTdesu
↓変換
TESTdesu
① !で囲まれている部分は変換させずに、その他を変換させ結果を表示
② 予め指定された文字列は変換させない
このように変換したいのですがどうすればいいでしょうか?
よろしくお願いします。
修正
②は予め設定された文字だけ変換しない。
konbanwa TEST
↓変換
こんばんわ TEST
できそうない気がしますが。。。
文字列を[0]からチェックしてゆくのであれば
1はBoolen型のフラグでも立てて[i]='!'が来たら
フラグ:=not フラグとしてフラグ=Falseのときのみカナ化します。
2は同じように一文字づつ検索をかける際にcopyを使って予約語を検索するか、予め予約語のある位置を保持させて、その開始から終了までをスキップすれば可能です。
どちらも
http://forum.nifty.com/fdelphi/samples/01361.html
が理解できればサンプルを示さずともできるかと思います。
321さん
すいません始めたばかりなもので。
もう少し勉強してから取り掛かろうと思います。
ご迷惑おかけしました。
ツイート | ![]() |