文字列を検索するにはstrIn()、strInRev()関数を使用します。
strIn()は先頭から検索、strInRevは末尾から検索を行います。
第1引数には検索対象の文字列、第2引数は検索文字列、第3引数は検索開始位置、第4引数は検索する文字の数を指定します。第3引数を1としてカウントします。
第3引数、第4引数は省略可能です。
戻り値はstrIn()、strInRev()共に先頭からの位置を返却します。
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
Kf(_strin){ Pe{ /*キーステーションが最初に実行するキーセット*/ N(_main); } } K(_main){ U{ R(#row1){ C(#colpre,"abcdefg") C(#colpro) } R(#row2){ C(#colpre,"HIJKLMN") C(#colpro) } R(#row3){ C(#colpre,"223456789") C(#colpro) } R(#row4){ C(#colpre,"1234512345") C(#colpro) } R(#row5){ C(#colpre,"1234512345") C(#colpro) } Pe{ /*文字aの位置を検索*/ (str)target1 = "a"; (int)num1 =strIn(#row1#colpre?,target1); #row1#colpro? = format2("文字{0}の位置は{1}です",target1,num1); /*文字Jの位置を検索*/ (str)target2 = "J"; (int)num2 =strIn(#row2#colpre?,target2); #row2#colpro? = format2("文字{0}の位置は{1}です",target2,num2); /*文字1の検索(存在しない文字)*/ (str)target3 = "1"; (int)num3 =strIn(#row3#colpre?,target3); #row3#colpro? = format2("文字{0}の位置は{1}です",target3,num3); /*文字1を途中から検索(戻り値は先頭からカウントされる)*/ (str)target4 = "1"; (int)num4 =strIn(#row4#colpre?,target4,1,5); #row4#colpro? = format2("文字{0}の位置は{1}です",target4,num4); /*文字1を末尾から検索する*/ (str)target5 = "1"; (int)num5 =strInRev(#row5#colpre?,target5); #row5#colpro? = format2("末尾から検索 文字{0}の位置は{1}です",target5,num5); } } } |
strin.ksf 1.41 KB
実行結果