トップページ > ソフトウェア > 2014年09月18日 > k1/L8noe0

書き込み順位&時間帯一覧

40 位/513 ID中時間01234567891011121314151617181920212223Total
書き込み数0002000000001000000000003



使用した名前一覧書き込んだスレッド一覧
名無しさん@お腹いっぱい。
AutoHotkey スレッド part18

書き込みレス一覧

AutoHotkey スレッド part18
955 :名無しさん@お腹いっぱい。[sage]:2014/09/18(木) 03:17:50.15 ID:k1/L8noe0
自分も少し興味あったので、あえて別な書き方で朝鮮・・・(置換はStringReplaceコマンド使用)
一応関数にしてみたけど、汎用性無し
※sch_str と rep_str 全部書くと書き込めないので途中省略(こうしても1回じゃ書き込めないので分割)

str := "12345あいうえお+:*<>、?/_abcde!""#$%&'()―-=VWXYZ"

;全角英数を半角に
sch_str := ["0","1", 〜 ,"8","9","a","b", 〜 ,"y","z","A","B", 〜 ,"Y","Z"]
rep_str := ["0","1", 〜 ,"8","9","a","b", 〜 ,"y","z","A","B", 〜 ,"Y","Z"]
ret := henkan(str, sch_str, rep_str)
MsgBox, % ret

;全角&半角記号を半角空白に
;半角記号の「"」のみ「"」でエスケープ→記述する場合、「""""」とする
sch_str := ["!","”", 〜 ,"/","_","!","""", 〜 ,"/","_"]
rep_str := A_Space
ret := henkan(str, sch_str, rep_str)
MsgBox, % ret
AutoHotkey スレッド part18
956 :名無しさん@お腹いっぱい。[sage]:2014/09/18(木) 03:18:24.58 ID:k1/L8noe0
henkan(str, search_str, replace_str) {
 if (! replace_str.MinIndex()) {   ;Objectかどうかの判断をこうしたが、正当な判断方法はどうするのか分からない
  loop, % search_str.MaxIndex()
  {
   StringReplace, str, str, % search_str[A_Index], % replace_str
  }
 } else {
  loop, % search_str.MaxIndex()
  {
   StringReplace, str, str, % search_str[A_Index], % replace_str[A_Index]
  }
 }
 return %str%
}
AutoHotkey スレッド part18
957 :名無しさん@お腹いっぱい。[sage]:2014/09/18(木) 12:38:54.86 ID:k1/L8noe0
>>956
Objectかどうかの判断方法が分かったので関数を訂正

henkan(source_str, search_str, replace_str) {
 if (IsObject(replace_str)) { ;(1)Objectかどうかの判断(1)と(2)は結果同じ(wikiより)
 ;if (replace_str) { ;(2)       〃       〃        ←分かり難い
  loop, % search_str.MaxIndex()
  {
   StringReplace, source_str, source_str, % search_str[A_Index], % replace_str[A_Index] ;replace_strがObjectの場合
  }
 } else {
  loop, % search_str.MaxIndex()
  {
   StringReplace, source_str, source_str, % search_str[A_Index], % replace_str ;replace_strがObjectではない場合
  }
 }
 return %source_str%
}


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。