hinekure.net が http://hspdev-wiki.net/ から自動クローリングした結果を表示しています。画像やリソースなどのリンクが切れています。予めご了承ください。
String/シフト - HSP開発wiki
トップ    編集凍結 差分バックアップ添付複製名前変更リロード   新規一覧単語検索最終更新   最終更新のRSS

文字列のシフト

指定インデックスの文字を先頭に移動(v2.61)

filetest052[sp].as
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    szAlphabet="abcdefghijklmnopqrstuvwxyz"
    strlen nLength,szAlphabet
        mes "ア  ル  フ  ァ  ベ  ッ  ト  順 -> "+szAlphabet
 
    /* 指定インデックスの文字を先頭に移動する */
    nChar=5 : gosub *LiftChar
        mes "インデックス 5を持ち上げた結果 -> "+ szAlphabet
 
    nChar=0 : gosub *LiftChar
        mes "インデックス 0を持ち上げた結果 -> "+ szAlphabet
 
    nChar=6 : gosub *LiftChar
        mes "インデックス 6を持ち上げた結果 -> "+ szAlphabet
 
    nChar=25 : gosub *LiftChar
        mes "インデックス25を持ち上げた結果 -> "+ szAlphabet
 
    nChar=26 : gosub *LiftChar
        mes "インデックス26を持ち上げた結果 -> "+ szAlphabet
 
    stop
 
*LiftChar
    /* 範囲外インデックスはスキップ */
    if (nChar<0) | (nChar>=nLength) : goto *@f
 
    /* 持ち上げる */
    strmid chCut,szAlphabet,nChar,1
    strmid szFront,szAlphabet,0,nChar
    strmid szBack,szAlphabet,nChar+1,nLength-nChar-1
 
    szAlphabet = chCut+szFront+szBack
*@
    return
コメント
  • peek,poke,スワップでもいけると思いますが、あくまで文字列にこだわってみました。 -- kz3 2005-08-02 14:21:03 (火)
  • プログラムはtipsの集合です。こういった小さいtipsが出来てこそ大きいプログラムがあるのです!!!欲張らずに小さく行きましょう。 -- kz3 2005-08-02 14:19:27 (火)
  • 使い途の見当がつかない -- ANTARES? 2007-10-01 (月) 14:16:35

URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White

トップ    編集凍結 差分バックアップ添付複製名前変更リロード   新規一覧単語検索最終更新   最終更新のRSS
Last-modified: 2007-10-01 (月) 14:16:36 (2260d)